Last modified: December 2nd, 2016

Getting started

CloudFlare's API exposes the entire CloudFlare infrastructure via a standardized programmatic interface. Using CloudFlare's API, you can do just about anything you can do on cloudflare.com via the customer dashboard.

The CloudFlare API is a RESTful API based on HTTPS requests and JSON responses. If you are registered with CloudFlare, you can obtain your API key from the bottom of the "My Account" page, found here: Go to My account.

Note: sending a user-agent is required.

What is CloudFlare?

CloudFlare makes sites lightning fast, protects them from attacks, ensures they are always online, and makes it simple to add web apps with a single click. More than 5 percent of global Web requests flow through CloudFlare's network; every month more than 1.8 billion people experience a faster, safer, better Internet thanks to CloudFlare.

Audience for APIs

CloudFlare offers public APIs with three audiences in mind.

  1. CloudFlare customers
  2. CloudFlare partners
  3. Developers

Customers: Individuals and organizations all over the world choose CloudFlare to protect and accelerate their web applications. Most customers manage their settings in the web dashboard, built using these APIs. Virtually anything you can do in the customer dashboard may be done via API. Example: purging the CloudFlare edge cache for a single file when it's updated on the origin server.

Partners: Many organizations make using CloudFlare a seamless option for improving their customers' performance and security. These APIs make that easier to do at scale. Example: a CloudFlare Certified Hosting Partner may use APIs to toggle basic security mode inside a hosting control panel.

Developers: Developers all over the world create useful applications which tie into CloudFlare services. These applications may include plugins and extensions to popular content management systems, apps that are offered in the CloudFlare Apps marketplace, runbooks for specific deployment systems, and many others.

Do's and Don'ts

What can you build with CloudFlare APIs?

Anything that's useful and follows the guidelines presented here.

What should you avoid doing with CloudFlare APIs?

Do not do any of the following:

  • Abuse CloudFlare systems or customers
  • Misuse CloudFlare trademarks
  • Misrepresent CloudFlare services as your own

Abuse: Follow all guidelines, including the rate limits defined below. Your ability to use the CloudFlare APIs may be terminated, temporarily or permanently, if our systems are abused. Similarly, anything in an application which goes against the goal of making CloudFlare more useful to CloudFlare customers or attempts to mistreat customers or their data will be grounds for termination.

Trademarks: CloudFlare has several registered trademarks. Details on how and when you may use CloudFlare trademarks are found at https://www.cloudflare.com/trademark, with links to specifics on logo use and spelling. Please review carefully.

Misrepresentation: Draw a clear line between the benefits you provide in your application and those benefits of the CloudFlare service that you enable via API. The APIs are not intended for "white labeling" or reselling CloudFlare services as your own. Nothing in your service or application should create a false sense of endorsement, sponsorship, or association with CloudFlare. You may sell your own application or service which utilizes the CloudFlare APIs, but may not sell CloudFlare services to customers without a commercial agreement with CloudFlare.

The full CloudFlare Terms of Use are found at https://www.cloudflare.com/terms.

Endpoints

The API is accessed by making HTTPS requests to a specific version endpoint URL, in which GET, POST, PUT, PATCH, and DELETE methods dictate how your interact with the information available. Every endpoint is accessed only via the SSL-enabled HTTPS (port 443) protocol.

Everything (methods, parameters, etc.) is fixed to a version number, and every call must contain one. The latest version is Version 4.

The stable HTTPS endpoint for the latest version is:

https://api.cloudflare.com/client/v4/

Requests

Requests must be sent over HTTPS with any payload formatted in JSON. All requests must include both X-Auth-Key and X-Auth-Email headers to authenticate. Requests that use X-Auth-User-Service-Key can use that instead of the Auth-Key and Auth-Email headers.

Required parameters

NameFormatDescription
API KeyX-Auth-KeyAPI key generated on the "My Account" page
EmailX-Auth-EmailEmail address associated with your account
User Service KeyX-Auth-User-Service-KeyA special CloudFlare API key good for a restricted set of endpoints. May vary in length.

Example request

Requests are generally formatted as follows:

GET /object/:object_id
Auth-Email cURL (example)
curl -X GET "https://api.cloudflare.com/client/v4/zones/cd7d0123e3012345da9420df9514dad0" \
     -H "Content-Type:application/json" \
     -H "X-Auth-Key:1234567893feefc5f0q5000bfo0c38d90bbeb" \
     -H "X-Auth-Email:example@example.com"
User-Service cURL (example)
curl -X GET "https://api.cloudflare.com/client/v4/zones/cd7d0123e3012345da9420df9514dad0" \
     -H "Content-Type:application/json" \
     -H "X-Auth-User-Service-Key:v1.0-e24fd090c02efcfecb4de8f4ff246fd5c75b48946fdf0ce26c59f91d0d90797b-cfa33fe60e8e34073c149323454383fc9005d25c9b4c502c2f063457ef65322eade065975001a0b4b4c591c5e1bd36a6e8f7e2d4fa8a9ec01c64c041e99530c2-07b9efe0acd78c82c8d9c690aacb8656d81c369246d7f996a205fe3c18e9254a"`

Rate limiting

The CloudFlare API sets a maximum of 1,200 requests in a five minute period.

Cache-Tag purging has a lower rate limit of up to 2,000 purge API calls in every 24 hour period. You may purge up to 30 tags in one API call.

Pagination

Depending on your request, the results returned may be limited. You can page through the returned results with the following query parameters.

NameTypeDescription
pageintegerWhich page of results to return
per_pageintegerHow many results to return per page
orderstringAttribute name to order the responses by
directionstringEither asc or desc
cURL (example)
GET /zones/:zone_identifier/dns_records
curl -X GET "https://api.cloudflare.com/client/v4/zones/cd7d068de3012345da9420df9514dad0/dns_records?page=3&per_page=20&order=type&direction=asc" \
     -H "Content-Type:application/json" \
     -H "X-Auth-Key:1234567893feefc5f0q5000bfo0c38d90bbeb" \
     -H "X-Auth-Email:example@example.com"

Responses

Format

Each response is a JSON object. The data requested is wrapped in the result tag. If you have a response, it will always be within the result field. We also include a success flag, an array of potential errors, and messages in the response. Some responses can have additional pagination info wrapped in the result_info

An error object will contain an integer code field and a message

Date fields will always be in UTC ISO-8601 format, including microseconds.

Success Response (example)
{
  "result": {
    "id":"2d4d028de3015345da9420df5514dad0",
    "type":"A",
    "name":"blog.example.com",
    "content":"2.6.4.5",
    "proxiable":true,
    "proxied":false,
    "ttl":1,
    "priority":0,
    "locked":false,
    "zone_id":"cd7d068de3012345da9420df9514dad0",
    "zone_name":"example.com",
    "modified_on":"2014-05-28T18:46:18.764425Z",
    "created_on":"2014-05-28T18:46:18.764425Z"
  },
  "success": true,
  "errors": [],
  "messages": [],
  "result_info": {
    "page": 1,
    "per_page": 20,
    "count": 1,
  "total_count": 200
}
Error Response (example)
{
  "result": null,
  "success": false,
  "errors": [{"code":1003,"message":"Invalid or missing zone id."}],
  "messages": []
}

HTTP response codes

The status of a response can be determined from the HTTP status code.

CodeStatusDescription
200OKrequest successful
304Not Modified
400Bad Requestrequest was invalid
401Unauthorizeduser does not have permission
403Forbiddenrequest not authenticated
429Too many requestsclient is rate limited
405Method Not Allowedincorrect HTTP method provided
415Unsupported Media Typeresponse is not valid JSON

How to get a Zone ID, User ID, or Organization ID

Nearly every resource in the v4 API (Users, Zones, Settings, Organizations, etc.) may be uniquely identified by a 32-byte string of hex characters ([a-f0-9]). These identifiers may be referred to in the documentation as zone_identifier, user_id, or even just id. Identifier values are usually captured during resource creation (POST requests) or when fetching entire collections (GET requests) of resources. Typically they appear as an id field in the JSON resource.

{
  "result": {
    "id":"2d4d028de3015345da9420df5514dad0",
    "type":"example"
  }
}

You can always find the IDs for API resources by making a GET request to its corresponding collection endpoint. For example, to list all Zone objects, a GET request may be sent to https://api.cloudflare.com/client/v4/zones. All objects listed in the result array will contain an id field; this is also known as zone_identifier.

How to Get a Zone ID

curl -X GET "https://api.cloudflare.com/client/v4/zones" \
    -H "X-Auth-Email: user@example.com" \
    -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
    -H "Content-Type: application/json"

User

The currently logged in/authenticated User

Object definition

View properties and constraints defined on the object

Show definition

GET User details
  • free
  • pro
  • business
  • enterprise

GET /user
cURL (example)
curl -X GET "https://api.cloudflare.com/client/v4/user" \
     -H "X-Auth-Email: user@example.com" \
     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
     -H "Content-Type: application/json"
Response (example)
{
  "success": true,
  "errors": [],
  "messages": [],
  "result": {
    "id": "7c5dae5552338874e5053f2534d2767a",
    "email": "user@example.com",
    "first_name": "John",
    "last_name": "Appleseed",
    "username": "cfuser12345",
    "telephone": "+1 123-123-1234",
    "country": "US",
    "zipcode": "12345",
    "created_on": "2014-01-01T05:20:00Z",
    "modified_on": "2014-01-01T05:20:00Z",
    "two_factor_authentication_enabled": false
  }
}

PATCH Update user
  • free
  • pro
  • business
  • enterprise

Update part of your user details

PATCH /user

Optional parameters

Name /typeDescription /exampleConstraints
first_name
string

User's first name

"John"
  • max length: 60
last_name
string

User's last name

"Appleseed"
  • max length: 60
telephone
string

User's telephone number

"+1 123-123-1234"
  • max length: 20
country
string

The country in which the user lives.

"US"
  • max length: 30
zipcode
string

The zipcode or postal code where the user lives.

"12345"
  • max length: 20
cURL (example)
curl -X PATCH "https://api.cloudflare.com/client/v4/user" \
     -H "X-Auth-Email: user@example.com" \
     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
     -H "Content-Type: application/json" \
     --data '{"first_name":"John","last_name":"Appleseed","telephone":"+1 123-123-1234","country":"US","zipcode":"12345"}'
Response (example)
{
  "success": true,
  "errors": [],
  "messages": [],
  "result": {
    "id": "7c5dae5552338874e5053f2534d2767a",
    "email": "user@example.com",
    "first_name": "John",
    "last_name": "Appleseed",
    "username": "cfuser12345",
    "telephone": "+1 123-123-1234",
    "country": "US",
    "zipcode": "12345",
    "created_on": "2014-01-01T05:20:00Z",
    "modified_on": "2014-01-01T05:20:00Z",
    "two_factor_authentication_enabled": false
  }
}

User Billing Profile

A user billing profile

Object definition

View properties and constraints defined on the object

Show definition

GET Billing Profile permission needed: #billing:read
  • free
  • pro
  • business
  • enterprise

Access your billing profile object

GET /user/billing/profile
cURL (example)
curl -X GET "https://api.cloudflare.com/client/v4/user/billing/profile" \
     -H "X-Auth-Email: user@example.com" \
     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
     -H "Content-Type: application/json"
Response (example)
{
  "success": true,
  "errors": [],
  "messages": [],
  "result": {
    "id": "0020c268dbf54e975e7fe8563df49d52",
    "first_name": "Bob",
    "last_name": "Smith",
    "address": "123 3rd St.",
    "address2": "Apt 123",
    "company": "CloudFlare",
    "city": "San Francisco",
    "state": "CA",
    "zipcode": "12345",
    "country": "US",
    "telephone": "+1 111-867-5309",
    "card_number": "xxxx-xxxx-xxxx-1234",
    "card_expiry_year": 2015,
    "card_expiry_month": 4,
    "vat": "aaa-123-987",
    "edited_on": "2014-03-01T12:21:02.0000Z",
    "created_on": "2014-03-01T12:21:02.0000Z"
  }
}

User Billing History

A user billing history

Object definition

View properties and constraints defined on the object

Show definition

GET Billing history permission needed: #billing:read
  • free
  • pro
  • business
  • enterprise

Access your billing history object

GET /user/billing/history

Optional parameters

Name /typeDescription /exampleConstraints
page
number

Page number of paginated results

1
  • default value: 1
  • min value: 1
per_page
number

Number of items per page

20
  • default value: 20
  • min value: 5
  • max value: 50
order
string

Field to order billing history by

"occured_at"
  • valid values: type, occured_at, action
type
string

The billing item type

"charge"
  • max length: 30
  • read only
occured_at
string

When the billing item was created

"2014-03-01T12:21:59.3456Z"
  • read only
action
string

The billing item action

"subscription"
  • max length: 30
  • read only
cURL (example)
curl -X GET "https://api.cloudflare.com/client/v4/user/billing/history?page=1&per_page=20&order=occured_at&type=charge&occured_at=2014-03-01T12:21:59.3456Z&action=subscription" \
     -H "X-Auth-Email: user@example.com" \
     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
     -H "Content-Type: application/json"
Response (example)
{
  "success": true,
  "errors": [],
  "messages": [],
  "result": [
    {
      "id": "b69a9f3492637782896352daae219e7d",
      "type": "charge",
      "action": "subscription",
      "description": "The billing item description",
      "occurred_at": "2014-03-01T12:21:59.3456Z",
      "amount": 20.99,
      "currency": "USD",
      "zone": {
        "name": "example.com"
      }
    }
  ],
  "result_info": {
    "page": 1,
    "per_page": 20,
    "count": 1,
    "total_count": 2000
  }
}

User Subscription

Listing of a user's subscriptions

Object definition

View properties and constraints defined on the object

Show definition

GET Get User Subscriptions permission needed: #billing:read

Lists all a user's subscriptions

GET /user/subscriptions
cURL (example)
curl -X GET "https://api.cloudflare.com/client/v4/user/subscriptions" \
     -H "X-Auth-Email: user@example.com" \
     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
     -H "Content-Type: application/json"
Response (example)
{
  "success": true,
  "errors": [],
  "messages": [],
  "result": [
    {
      "id": "506e3185e9c882d175a2d0cb0093d9f2",
      "state": "Paid",
      "price": 20,
      "currency": "USD",
      "component_values": [
        {
          "name": "page_rules",
          "value": 20,
          "default": 5,
          "price": 5
        }
      ],
      "zone": {
        "id": "023e105f4ecef8ad9ca31a8372d0c353",
        "name": "example.com"
      },
      "frequency": "monthly",
      "rate_plan": {
        "id": "free",
        "public_name": "Business Plan",
        "currency": "USD",
        "scope": "zone",
        "externally_managed": false
      },
      "current_period_end": "2014-03-31T12:20:00Z",
      "current_period_start": "2014-05-11T12:20:00Z"
    }
  ],
  "result_info": {
    "page": 1,
    "per_page": 20,
    "count": 1,
    "total_count": 2000
  }
}

PUT Update a User Subscription permission needed: #billing:read#billing:edit
  • free
  • pro
  • business
  • enterprise

Update a user subscriptions.

PUT /user/subscription/:identifier

Optional parameters

Name /typeDescription /exampleConstraints
current_period_end
string

The end of the current period, and also when the next billing is due

"2014-03-31T12:20:00Z"
  • read only
component_values
array

The list of add-ons subscribed to

[ { "name": "page_rules", "value": 20, "default": 5, "price": 5 } ]
    rate_plan
    object

    The rate plan applied to the subscription

    { "id": "free", "public_name": "Business Plan", "currency": "USD", "scope": "zone", "externally_managed": false }
      price
      number

      The price of the subscription that will be billed, in US dollars

      20
      • read only
      current_period_start
      string

      When the current billing period started, may be the same as InitialPeriodStart if this is the first period

      "2014-05-11T12:20:00Z"
      • read only
      zone
      object

      A simple zone object. May have null properties if not a zone subscription.

      { "id": "023e105f4ecef8ad9ca31a8372d0c353", "name": "example.com" }
        currency
        string

        The monetary unit in which pricing information is displayed

        "USD"
        • read only
        state
        string

        The state that the subscription is in

        "Paid"
        • valid values: Trial, Provisioned, Paid, AwaitingPayment, Cancelled, Failed, Expired
        • read only
        id
        string

        Subscription identifier tag

        "506e3185e9c882d175a2d0cb0093d9f2"
        • max length: 32
        • read only
        frequency
        string

        How often the subscription is renewed automatically

        "monthly"
        • valid values: weekly, monthly, quarterly, yearly
        cURL (example)
        curl -X PUT "https://api.cloudflare.com/client/v4/user/subscription/506e3185e9c882d175a2d0cb0093d9f2" \
             -H "X-Auth-Email: user@example.com" \
             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
             -H "Content-Type: application/json" \
             --data '{"id":"506e3185e9c882d175a2d0cb0093d9f2","state":"Paid","price":20,"currency":"USD","component_values":[{"name":"page_rules","value":20,"default":5,"price":5}],"zone":{"id":"023e105f4ecef8ad9ca31a8372d0c353","name":"example.com"},"frequency":"monthly","rate_plan":{"id":"free","public_name":"Business Plan","currency":"USD","scope":"zone","externally_managed":false},"current_period_end":"2014-03-31T12:20:00Z","current_period_start":"2014-05-11T12:20:00Z"}'
        Response (example)
        {
          "success": true,
          "errors": [],
          "messages": [],
          "result": {
            "id": "506e3185e9c882d175a2d0cb0093d9f2",
            "state": "Paid",
            "price": 20,
            "currency": "USD",
            "component_values": [
              {
                "name": "page_rules",
                "value": 20,
                "default": 5,
                "price": 5
              }
            ],
            "zone": {
              "id": "023e105f4ecef8ad9ca31a8372d0c353",
              "name": "example.com"
            },
            "frequency": "monthly",
            "rate_plan": {
              "id": "free",
              "public_name": "Business Plan",
              "currency": "USD",
              "scope": "zone",
              "externally_managed": false
            },
            "current_period_end": "2014-03-31T12:20:00Z",
            "current_period_start": "2014-05-11T12:20:00Z"
          }
        }

        DELETE Delete User Subscriptions permission needed: #billing:edit

        Deletes a user's subscriptions

        DELETE /user/subscription/:identifier
        cURL (example)
        curl -X DELETE "https://api.cloudflare.com/client/v4/user/subscription/506e3185e9c882d175a2d0cb0093d9f2" \
             -H "X-Auth-Email: user@example.com" \
             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
             -H "Content-Type: application/json"
        Response (example)
        {
          "subscription_id": "506e3185e9c882d175a2d0cb0093d9f2"
        }

        User-level Firewall access rule

        A firewall access rule applied to all zones owned by the user

        Object definition

        View properties and constraints defined on the object

        Show definition

        GET List access rules
        • free
        • pro
        • business
        • enterprise

        Search, sort, and filter IP/country access rules

        GET /user/firewall/access_rules/rules

        Optional parameters

        Name /typeDescription /exampleConstraints
        mode
        string

        The action to apply to a matched request

        "challenge"
        • valid values: block, challenge, whitelist
        configuration_target
        string

        The rule configuration target

        "ip"
        • valid values: ip, ip_range, country
        configuration_value
        string

        Search by IP, range, or country code.

        "1.2.3.4"
        • notes: The configuration_value can be in the following formats: IP, country code or ASN (Autonomous System Number). IP is a single IP address or a subnet. /16 and /24 subnets are accepted for IPv4 addresses and /32, /48 and /64 are accepted for IPv6 addresses. Country code is an ISO 2-letter country code. ASN should be prefixed with AS followed by the number. Eg. AS12345.
        page
        number

        Page number of paginated results

        1
        • default value: 1
        • min value: 1
        per_page
        number

        Number of rules per page

        50
        • default value: 50
        • min value: 5
        • max value: 100
        order
        string

        Field to order rules by

        "mode"
        • valid values: configuration_target, configuration_value, mode
        direction
        string

        Direction to order rules

        "desc"
        • valid values: asc, desc
        match
        string

        Whether to match all search requirements or at least one (any)

        "all"
        • default value: all
        • valid values: any, all
        cURL (example)
        curl -X GET "https://api.cloudflare.com/client/v4/user/firewall/access_rules/rules?mode=challenge&configuration_target=ip&configuration_value=1.2.3.4&page=1&per_page=50&order=mode&direction=desc&match=all" \
             -H "X-Auth-Email: user@example.com" \
             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
             -H "Content-Type: application/json"
        Response (example)
        {
          "success": true,
          "errors": [],
          "messages": [],
          "result": [
            {
              "id": "92f17202ed8bd63d69a66b86a49a8f6b",
              "notes": "This rule is on because of an event that occured on date X",
              "allowed_modes": [
                "whitelist",
                "block",
                "challenge"
              ],
              "mode": "challenge",
              "configuration": {
                "target": "ip",
                "value": "1.2.3.4"
              },
              "scope": {
                "id": "7c5dae5552338874e5053f2534d2767a",
                "email": "user@example.com",
                "type": "user"
              },
              "created_on": "2014-01-01T05:20:00.12345Z",
              "modified_on": "2014-01-01T05:20:00.12345Z"
            }
          ],
          "result_info": {
            "page": 1,
            "per_page": 20,
            "count": 1,
            "total_count": 2000
          }
        }

        POST Create access rule
        • free
        • pro
        • business
        • enterprise

        Make a new IP, IP range, or country access rule for all zones owned by the user. Note: If you would like to create an access rule that applies to a specific zone only, use the zone firewall endpoints.

        POST /user/firewall/access_rules/rules

        Required parameters

        Name /typeDescription /exampleConstraints
        mode
        string

        The action to apply to a matched request

        "challenge"
        • valid values: block, challenge, whitelist
        configuration
        object

        Rule configuration

        { "target": "ip", "value": "1.2.3.4" }
        One of the following:

          Optional parameters

          Name /typeDescription /exampleConstraints
          notes
          string

          A personal note about the rule. Typically used as a reminder or explanation for the rule.

          "This rule is on because of an event that occured on date X"
            cURL (example)
            curl -X POST "https://api.cloudflare.com/client/v4/user/firewall/access_rules/rules" \
                 -H "X-Auth-Email: user@example.com" \
                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                 -H "Content-Type: application/json" \
                 --data '{"mode":"challenge","configuration":{"target":"ip","value":"1.2.3.4"},"notes":"This rule is on because of an event that occured on date X"}'
            Response (example)
            {
              "success": true,
              "errors": [],
              "messages": [],
              "result": {
                "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                "notes": "This rule is on because of an event that occured on date X",
                "allowed_modes": [
                  "whitelist",
                  "block",
                  "challenge"
                ],
                "mode": "challenge",
                "configuration": {
                  "target": "ip",
                  "value": "1.2.3.4"
                },
                "scope": {
                  "id": "7c5dae5552338874e5053f2534d2767a",
                  "email": "user@example.com",
                  "type": "user"
                },
                "created_on": "2014-01-01T05:20:00.12345Z",
                "modified_on": "2014-01-01T05:20:00.12345Z"
              }
            }

            PATCH Update access rule
            • free
            • pro
            • business
            • enterprise

            Update rule state and/or configuration. This will be applied across all zones owned by the user.

            PATCH /user/firewall/access_rules/rules/:identifier

            Optional parameters

            Name /typeDescription /exampleConstraints
            mode
            string

            The action to apply to a matched request

            "challenge"
            • valid values: block, challenge, whitelist
            configuration
            object

            Rule configuration

            { "target": "ip", "value": "1.2.3.4" }
            One of the following:
              notes
              string

              A personal note about the rule. Typically used as a reminder or explanation for the rule.

              "This rule is on because of an event that occured on date X"
                cURL (example)
                curl -X PATCH "https://api.cloudflare.com/client/v4/user/firewall/access_rules/rules/92f17202ed8bd63d69a66b86a49a8f6b" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json" \
                     --data '{"mode":"challenge","configuration":{"target":"ip","value":"1.2.3.4"},"notes":"This rule is on because of an event that occured on date X"}'
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": {
                    "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                    "notes": "This rule is on because of an event that occured on date X",
                    "allowed_modes": [
                      "whitelist",
                      "block",
                      "challenge"
                    ],
                    "mode": "challenge",
                    "configuration": {
                      "target": "ip",
                      "value": "1.2.3.4"
                    },
                    "scope": {
                      "id": "7c5dae5552338874e5053f2534d2767a",
                      "email": "user@example.com",
                      "type": "user"
                    },
                    "created_on": "2014-01-01T05:20:00.12345Z",
                    "modified_on": "2014-01-01T05:20:00.12345Z"
                  }
                }

                DELETE Delete access rule
                • free
                • pro
                • business
                • enterprise

                Remove an access rule so it is no longer evaluated during requests. This will apply to all zones owned by the user

                DELETE /user/firewall/access_rules/rules/:identifier
                cURL (example)
                curl -X DELETE "https://api.cloudflare.com/client/v4/user/firewall/access_rules/rules/92f17202ed8bd63d69a66b86a49a8f6b" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json"
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": {
                    "id": "92f17202ed8bd63d69a66b86a49a8f6b"
                  }
                }

                User's Organizations

                A list of organizations this user is a member of

                Object definition

                View properties and constraints defined on the object

                Show definition

                GET List organizations
                • free
                • pro
                • business
                • enterprise

                List organizations the user is associated with

                GET /user/organizations

                Optional parameters

                Name /typeDescription /exampleConstraints
                status
                string

                Whether or not the user is a member of the organization or has an inivitation pending

                "member"
                • valid values: member, invited
                name
                string

                Organization Name

                "CloudFlare, Inc."
                • max length: 100
                page
                number

                Page number of paginated results

                1
                • default value: 1
                • min value: 1
                per_page
                number

                Number of organizations per page

                20
                • default value: 20
                • min value: 5
                • max value: 50
                order
                string

                Field to order organizations by

                "status"
                • valid values: id, name, status
                direction
                string

                Direction to order organizations

                "desc"
                • valid values: asc, desc
                match
                string

                Whether to match all search requirements or at least one (any)

                "all"
                • default value: all
                • valid values: any, all
                cURL (example)
                curl -X GET "https://api.cloudflare.com/client/v4/user/organizations?status=member&name=CloudFlare, Inc.&page=1&per_page=20&order=status&direction=desc&match=all" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json"
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": [
                    {
                      "id": "01a7362d577a6c3019a474fd6f485823",
                      "name": "CloudFlare, Inc.",
                      "status": "member",
                      "permissions": [
                        "#zones:read"
                      ],
                      "roles": [
                        "All Privileges - Super Administrator"
                      ]
                    }
                  ],
                  "result_info": {
                    "page": 1,
                    "per_page": 20,
                    "count": 1,
                    "total_count": 2000
                  }
                }

                GET Organization details
                • free
                • pro
                • business
                • enterprise

                Get a specific organization the user is associated with

                GET /user/organizations/:identifier
                cURL (example)
                curl -X GET "https://api.cloudflare.com/client/v4/user/organizations/01a7362d577a6c3019a474fd6f485823" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json"
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": {
                    "id": "01a7362d577a6c3019a474fd6f485823",
                    "name": "CloudFlare, Inc.",
                    "status": "member",
                    "permissions": [
                      "#zones:read"
                    ],
                    "roles": [
                      "All Privileges - Super Administrator"
                    ]
                  }
                }

                DELETE Leave organization
                • free
                • pro
                • business
                • enterprise

                Remove association to an organization

                DELETE /user/organizations/:identifier
                cURL (example)
                curl -X DELETE "https://api.cloudflare.com/client/v4/user/organizations/01a7362d577a6c3019a474fd6f485823" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json"
                Response (example)
                {
                  "id": "01a7362d577a6c3019a474fd6f485823"
                }

                User's Invites

                Your pending invitations to organizations

                Object definition

                View properties and constraints defined on the object

                Show definition

                GET List invitations
                • free
                • pro
                • business
                • enterprise

                List all invitations associated with my user

                GET /user/invites
                cURL (example)
                curl -X GET "https://api.cloudflare.com/client/v4/user/invites" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json"
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": [
                    {
                      "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                      "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                      "invited_member_email": "user@example.com",
                      "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                      "organization_name": "CloudFlare, Inc.",
                      "roles": [
                        {
                          "id": "3536bcfad5faccb999b47003c79917fb",
                          "name": "Organization Admin",
                          "description": "Administrative access to the entire Organization",
                          "permissions": [
                            "#zones:read"
                          ]
                        }
                      ],
                      "invited_by": "user@example.com",
                      "invited_on": "2014-01-01T05:20:00Z",
                      "expires_on": "2014-01-01T05:20:00Z",
                      "status": "accepted"
                    }
                  ],
                  "result_info": {
                    "page": 1,
                    "per_page": 20,
                    "count": 1,
                    "total_count": 2000
                  }
                }

                GET Invitation details
                • free
                • pro
                • business
                • enterprise

                Get the details of an invitation

                GET /user/invites/:identifier
                cURL (example)
                curl -X GET "https://api.cloudflare.com/client/v4/user/invites/4f5f0c14a2a41d5063dd301b2f829f04" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json"
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": {
                    "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                    "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                    "invited_member_email": "user@example.com",
                    "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                    "organization_name": "CloudFlare, Inc.",
                    "roles": [
                      {
                        "id": "3536bcfad5faccb999b47003c79917fb",
                        "name": "Organization Admin",
                        "description": "Administrative access to the entire Organization",
                        "permissions": [
                          "#zones:read"
                        ]
                      }
                    ],
                    "invited_by": "user@example.com",
                    "invited_on": "2014-01-01T05:20:00Z",
                    "expires_on": "2014-01-01T05:20:00Z",
                    "status": "accepted"
                  }
                }

                PATCH Respond to Invitation
                • free
                • pro
                • business
                • enterprise

                Respond to an invitation

                PATCH /user/invites/:identifier

                Required parameters

                Name /typeDescription /exampleConstraints
                status
                string

                Status of your response to the invitation (rejected or accepted)

                "accepted"
                • valid values: accepted, rejected
                cURL (example)
                curl -X PATCH "https://api.cloudflare.com/client/v4/user/invites/4f5f0c14a2a41d5063dd301b2f829f04" \
                     -H "X-Auth-Email: user@example.com" \
                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                     -H "Content-Type: application/json" \
                     --data '{"status":"accepted"}'
                Response (example)
                {
                  "success": true,
                  "errors": [],
                  "messages": [],
                  "result": {
                    "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                    "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                    "invited_member_email": "user@example.com",
                    "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                    "organization_name": "CloudFlare, Inc.",
                    "roles": [
                      {
                        "id": "3536bcfad5faccb999b47003c79917fb",
                        "name": "Organization Admin",
                        "description": "Administrative access to the entire Organization",
                        "permissions": [
                          "#zones:read"
                        ]
                      }
                    ],
                    "invited_by": "user@example.com",
                    "invited_on": "2014-01-01T05:20:00Z",
                    "expires_on": "2014-01-01T05:20:00Z",
                    "status": "accepted"
                  }
                }

                Zone

                A Zone is a domain name along with its subdomains and other identities

                Object definitions

                View properties and constraints defined on the object

                Show definitions

                POST Create a zone permission needed: #zone:edit
                • free
                • pro
                • business
                • enterprise

                POST /zones

                Required parameters

                Name /typeDescription /exampleConstraints
                name
                string

                The domain name

                "example.com"
                • max length: 253
                • read only
                • pattern: ^([a-zA-Z0-9][\-a-zA-Z0-9]*\.)+[\-a-zA-Z0-9]{2,20}$

                Optional parameters

                Name /typeDescription /exampleConstraints
                jump_start
                boolean

                Automatically attempt to fetch existing DNS records

                true
                • default value:
                • valid values: (true,false)
                organization
                object

                To create a zone owned by an organization, specify the organization parameter. Organization objects can be found in the User or User's Organizations endpoints. You must pass at least the ID of the organization.

                { "id": "01a7362d577a6c3019a474fd6f485823", "name": "CloudFlare, Inc.", "status": "active", "permissions": [ "#zones:read" ] }
                  cURL (example)
                  curl -X POST "https://api.cloudflare.com/client/v4/zones" \
                       -H "X-Auth-Email: user@example.com" \
                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                       -H "Content-Type: application/json" \
                       --data '{"name":"example.com","jump_start":true,"organization":{"id":"01a7362d577a6c3019a474fd6f485823","name":"CloudFlare, Inc.","status":"active","permissions":["#zones:read"]}}'
                  Response (example)
                  {
                    "success": true,
                    "errors": [],
                    "messages": [],
                    "result": {
                      "id": "023e105f4ecef8ad9ca31a8372d0c353",
                      "name": "example.com",
                      "development_mode": 7200,
                      "original_name_servers": [
                        "ns1.originaldnshost.com",
                        "ns2.originaldnshost.com"
                      ],
                      "original_registrar": "GoDaddy",
                      "original_dnshost": "NameCheap",
                      "created_on": "2014-01-01T05:20:00.12345Z",
                      "modified_on": "2014-01-01T05:20:00.12345Z",
                      "name_servers": [
                        "tony.ns.cloudflare.com",
                        "woz.ns.cloudflare.com"
                      ],
                      "owner": {
                        "id": "7c5dae5552338874e5053f2534d2767a",
                        "email": "user@example.com",
                        "owner_type": "user"
                      },
                      "permissions": [
                        "#zone:read",
                        "#zone:edit"
                      ],
                      "plan": {
                        "id": "e592fd9519420ba7405e1307bff33214",
                        "name": "Pro Plan",
                        "price": 20,
                        "currency": "USD",
                        "frequency": "monthly",
                        "legacy_id": "pro",
                        "is_subscribed": true,
                        "can_subscribe": true
                      },
                      "plan_pending": {
                        "id": "e592fd9519420ba7405e1307bff33214",
                        "name": "Pro Plan",
                        "price": 20,
                        "currency": "USD",
                        "frequency": "monthly",
                        "legacy_id": "pro",
                        "is_subscribed": true,
                        "can_subscribe": true
                      },
                      "status": "active",
                      "paused": false,
                      "type": "full",
                      "checked_on": "2014-01-01T05:20:00.12345Z"
                    }
                  }

                  PUT Initiate another zone activation check permission needed: #zone:edit
                  • free
                  • pro
                  • business
                  • enterprise

                  PUT /zones/:identifier/activation_check
                  cURL (example)
                  curl -X PUT "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/activation_check" \
                       -H "X-Auth-Email: user@example.com" \
                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                       -H "Content-Type: application/json"
                  Response (example)
                  {
                    "success": true,
                    "errors": [],
                    "messages": [],
                    "result": {
                      "id": "023e105f4ecef8ad9ca31a8372d0c353"
                    }
                  }

                  GET List zones permission needed: #zone:read
                  • free
                  • pro
                  • business
                  • enterprise

                  List, search, sort, and filter your zones

                  GET /zones

                  Optional parameters

                  Name /typeDescription /exampleConstraints
                  name
                  string

                  A domain name

                  "example.com"
                  • max length: 253
                  • pattern: hostname
                  status
                  string

                  Status of the zone

                  "active"
                  • valid values: active, pending, initializing, moved, deleted, deactivated
                  • read only
                  page
                  number

                  Page number of paginated results

                  1
                  • default value: 1
                  • min value: 1
                  per_page
                  number

                  Number of zones per page

                  20
                  • default value: 20
                  • min value: 5
                  • max value: 50
                  order
                  string

                  Field to order zones by

                  "status"
                  • valid values: name, status, email
                  direction
                  string

                  Direction to order zones

                  "desc"
                  • valid values: asc, desc
                  match
                  string

                  Whether to match all search requirements or at least one (any)

                  "all"
                  • default value: all
                  • valid values: any, all
                  cURL (example)
                  curl -X GET "https://api.cloudflare.com/client/v4/zones?name=example.com&status=active&page=1&per_page=20&order=status&direction=desc&match=all" \
                       -H "X-Auth-Email: user@example.com" \
                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                       -H "Content-Type: application/json"
                  Response (example)
                  {
                    "success": true,
                    "errors": [],
                    "messages": [],
                    "result": [
                      {
                        "id": "023e105f4ecef8ad9ca31a8372d0c353",
                        "name": "example.com",
                        "development_mode": 7200,
                        "original_name_servers": [
                          "ns1.originaldnshost.com",
                          "ns2.originaldnshost.com"
                        ],
                        "original_registrar": "GoDaddy",
                        "original_dnshost": "NameCheap",
                        "created_on": "2014-01-01T05:20:00.12345Z",
                        "modified_on": "2014-01-01T05:20:00.12345Z",
                        "name_servers": [
                          "tony.ns.cloudflare.com",
                          "woz.ns.cloudflare.com"
                        ],
                        "owner": {
                          "id": "7c5dae5552338874e5053f2534d2767a",
                          "email": "user@example.com",
                          "owner_type": "user"
                        },
                        "permissions": [
                          "#zone:read",
                          "#zone:edit"
                        ],
                        "plan": {
                          "id": "e592fd9519420ba7405e1307bff33214",
                          "name": "Pro Plan",
                          "price": 20,
                          "currency": "USD",
                          "frequency": "monthly",
                          "legacy_id": "pro",
                          "is_subscribed": true,
                          "can_subscribe": true
                        },
                        "plan_pending": {
                          "id": "e592fd9519420ba7405e1307bff33214",
                          "name": "Pro Plan",
                          "price": 20,
                          "currency": "USD",
                          "frequency": "monthly",
                          "legacy_id": "pro",
                          "is_subscribed": true,
                          "can_subscribe": true
                        },
                        "status": "active",
                        "paused": false,
                        "type": "full",
                        "checked_on": "2014-01-01T05:20:00.12345Z"
                      }
                    ],
                    "result_info": {
                      "page": 1,
                      "per_page": 20,
                      "count": 1,
                      "total_count": 2000
                    }
                  }

                  GET Zone details permission needed: #zone:read
                  • free
                  • pro
                  • business
                  • enterprise

                  GET /zones/:identifier
                  cURL (example)
                  curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353" \
                       -H "X-Auth-Email: user@example.com" \
                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                       -H "Content-Type: application/json"
                  Response (example)
                  {
                    "success": true,
                    "errors": [],
                    "messages": [],
                    "result": {
                      "id": "023e105f4ecef8ad9ca31a8372d0c353",
                      "name": "example.com",
                      "development_mode": 7200,
                      "original_name_servers": [
                        "ns1.originaldnshost.com",
                        "ns2.originaldnshost.com"
                      ],
                      "original_registrar": "GoDaddy",
                      "original_dnshost": "NameCheap",
                      "created_on": "2014-01-01T05:20:00.12345Z",
                      "modified_on": "2014-01-01T05:20:00.12345Z",
                      "name_servers": [
                        "tony.ns.cloudflare.com",
                        "woz.ns.cloudflare.com"
                      ],
                      "owner": {
                        "id": "7c5dae5552338874e5053f2534d2767a",
                        "email": "user@example.com",
                        "owner_type": "user"
                      },
                      "permissions": [
                        "#zone:read",
                        "#zone:edit"
                      ],
                      "plan": {
                        "id": "e592fd9519420ba7405e1307bff33214",
                        "name": "Pro Plan",
                        "price": 20,
                        "currency": "USD",
                        "frequency": "monthly",
                        "legacy_id": "pro",
                        "is_subscribed": true,
                        "can_subscribe": true
                      },
                      "plan_pending": {
                        "id": "e592fd9519420ba7405e1307bff33214",
                        "name": "Pro Plan",
                        "price": 20,
                        "currency": "USD",
                        "frequency": "monthly",
                        "legacy_id": "pro",
                        "is_subscribed": true,
                        "can_subscribe": true
                      },
                      "status": "active",
                      "paused": false,
                      "type": "full",
                      "checked_on": "2014-01-01T05:20:00.12345Z"
                    }
                  }

                  PATCH Edit Zone Properties
                  • free
                  • pro
                  • business
                  • enterprise

                  Only one zone property can be changed at a time

                  PATCH /zones/:identifier

                  Optional parameters

                  Name /typeDescription /exampleConstraints
                  paused
                  boolean

                  Indicates if the zone is only using CloudFlare DNS services. A true value means the zone will not receive security or performance benefits.

                  false
                  • valid values: (true,false)
                  • read only
                  vanity_name_servers
                  array

                  An array of domains used for custom name servers. This is only available for Business and Enterprise plans.

                  [ "ns1.example.com", "ns2.example.com" ]
                    plan
                    object

                    The desired plan for the zone. Changing this value will create/cancel associated subscriptions. To view available plans for this zone, see Zone Plans

                    { "id": "e592fd9519420ba7405e1307bff33214" }
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"paused":false,"vanity_name_servers":["ns1.example.com","ns2.example.com"],"plan":{"id":"e592fd9519420ba7405e1307bff33214"}}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "023e105f4ecef8ad9ca31a8372d0c353",
                          "name": "example.com",
                          "development_mode": 7200,
                          "original_name_servers": [
                            "ns1.originaldnshost.com",
                            "ns2.originaldnshost.com"
                          ],
                          "original_registrar": "GoDaddy",
                          "original_dnshost": "NameCheap",
                          "created_on": "2014-01-01T05:20:00.12345Z",
                          "modified_on": "2014-01-01T05:20:00.12345Z",
                          "name_servers": [
                            "tony.ns.cloudflare.com",
                            "woz.ns.cloudflare.com"
                          ],
                          "owner": {
                            "id": "7c5dae5552338874e5053f2534d2767a",
                            "email": "user@example.com",
                            "owner_type": "user"
                          },
                          "permissions": [
                            "#zone:read",
                            "#zone:edit"
                          ],
                          "plan": {
                            "id": "e592fd9519420ba7405e1307bff33214",
                            "name": "Pro Plan",
                            "price": 20,
                            "currency": "USD",
                            "frequency": "monthly",
                            "legacy_id": "pro",
                            "is_subscribed": true,
                            "can_subscribe": true
                          },
                          "plan_pending": {
                            "id": "e592fd9519420ba7405e1307bff33214",
                            "name": "Pro Plan",
                            "price": 20,
                            "currency": "USD",
                            "frequency": "monthly",
                            "legacy_id": "pro",
                            "is_subscribed": true,
                            "can_subscribe": true
                          },
                          "status": "active",
                          "paused": false,
                          "type": "full",
                          "checked_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      DELETE Purge all files permission needed: #zone:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Remove ALL files from CloudFlare's cache

                      DELETE /zones/:identifier/purge_cache

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      purge_everything
                      boolean

                      A flag that indicates all resources in CloudFlare's cache should be removed. Note: This may have dramatic affects on your origin server load after performing this action.

                      true
                      • valid values: true
                      cURL (example)
                      curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/purge_cache" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"purge_everything":true}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "023e105f4ecef8ad9ca31a8372d0c353"
                        }
                      }

                      DELETE Purge individual files by URL and Cache-Tags permission needed: #zone:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Granularly remove one or more files from CloudFlare's cache either by specifying the URL or the associated Cache-Tag. All tiers can purge by URL. Cache-Tag is for Enterprise only. <br/><br/> NB: Cache-Tag purging has a rate limit of up to 2,000 purge API calls in every 24 hour period. You may purge up to 30 tags in one API call.

                      DELETE /zones/:identifier/purge_cache

                      Optional parameters

                      Name /typeDescription /exampleConstraints
                      files
                      array

                      An array of URLs that should be removed from cache

                      [ "http://www.example.com/css/styles.css" ]
                      • max length: 30
                      tags
                      array

                      Any assets served with a Cache-Tag header that matches one of the provided values will be purged from the CloudFlare cache

                      [ "some-tag", "another-tag" ]
                      • max length: 30
                      cURL (example)
                      curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/purge_cache" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"files":["http://www.example.com/css/styles.css"],"tags":["some-tag","another-tag"]}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "023e105f4ecef8ad9ca31a8372d0c353"
                        }
                      }

                      DELETE Delete a zone permission needed: #zone:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Delete an existing zone.

                      DELETE /zones/:identifier
                      cURL (example)
                      curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "023e105f4ecef8ad9ca31a8372d0c353"
                        }
                      }

                      Zone error codes

                      CodeDescription
                      1012Request must contain one of 'purge_everything' or 'files'
                      1023Invalid or missing zone
                      1056preserve_ini must be a boolean
                      1067Invalid organization identifier passed in your organization variable
                      1078This zone has no valid vanity IPs.
                      1002'name' must be a valid domain
                      1013'purge_everything' must be true
                      1024<domain> already exists
                      1057Zone must be in 'initializing' status
                      1068Permission denied
                      1079This zone has no valid vanity name servers.
                      1003'jump_start' must be boolean
                      1014'files' must be an array of urls
                      1069organization variable should be an organization object
                      1004Failed to assign name servers
                      1015Unable to purge <url>
                      1059Unable to delete zone
                      1016Unable to purge any urls
                      1049<domain> is not a registered domain
                      1006Invalid or missing zone
                      1017Unable to purge all
                      1018Invalid zone status
                      1008Invalid or missing Zone id
                      1019Zone is already paused
                      1080There is a conflict with one of the name servers.
                      1070This operation requires a Business or Enterprise account.
                      1081There are no valid vanity name servers to disable.
                      1071Vanity name server array expected.
                      1082Unable to purge '<url>'. You can only purge files for this zone
                      1050<domain> is currently being tasted. It is not currently a registered domain
                      1061<domain> already exists
                      1072Vanity name server array cannot be empty.
                      1083Unable to purge '<url>'. Rate limit reached. Please wait if you need to perform more operations
                      1051CloudFlare is already hosting <domain>
                      1062Not allowed to update zone status
                      1073A name server provided is in the wrong format.
                      1084Unable to purge '<url>'.
                      1052An error has occurred and it has been logged. We will fix this problem promptly. We apologize for the inconvenience
                      1063Not allowed to update zone step
                      1074Could not find a valid zone.
                      1085Only one property can be updated at a time
                      1020Invalid or missing zone
                      1053<domain> is already disabled
                      1064Not allowed to update zone step. Bad zone status
                      1075Vanity name server array count is invalid
                      1086Invalid property
                      1010Invalid Zone
                      1021Invalid zone status
                      1054<domain> is already enabled
                      1065Not allowed to update zone step. Zone has already been set up
                      1076Name servers have invalid IP addresses
                      1087Zone is in an invalid state
                      1000Invalid or missing user
                      1011Invalid or missing zone
                      1022Zone is already unpaused
                      1055Failed to disable <domain>
                      1066Could not promote zone to step 3
                      1077Could not find a valid zone.

                      Zone Rate Plan

                      A zone rate plan from the billing service

                      Object definition

                      View properties and constraints defined on the object

                      Show definition

                      GET Available Rate Plans permission needed: #billing:read
                      • free
                      • pro
                      • business
                      • enterprise

                      List all rate plans the zone can subscribe to.

                      GET /zones/:zone_identifier/available_rate_plans
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/available_rate_plans" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "free",
                          "name": "Free Plan",
                          "currency": "USD",
                          "duration": 1,
                          "frequency": "monthly",
                          "components": [
                            {
                              "name": "page_rules",
                              "default": 5,
                              "unit_price": 1
                            }
                          ]
                        }
                      }

                      Zone Settings

                      A Zone setting changes how the Zone works in relation to caching, security, or other features of CloudFlare

                      Object definitions

                      View properties and constraints defined on the object

                      Show definitions

                      GET Get all Zone settings permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Available settings for your user in relation to a zone

                      GET /zones/:zone_identifier/settings
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": [
                          {
                            "id": "always_online",
                            "value": "on",
                            "editable": true,
                            "modified_on": "2014-01-01T05:20:00.12345Z"
                          }
                        ],
                        "result_info": {
                          "page": 1,
                          "per_page": 20,
                          "count": 1,
                          "total_count": 2000
                        }
                      }

                      GET Get Advanced DDOS setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Advanced protection from Distributed Denial of Service (DDoS) attacks on your website. This is an uneditable value that is 'on' in the case of Business and Enterprise zones

                      GET /zones/:zone_identifier/settings/advanced_ddos
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/advanced_ddos" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "advanced_ddos",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Always Online setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      When enabled, Always Online will serve pages from our cache if your server is offline (https://support.cloudflare.com/hc/en-us/articles/200168006)

                      GET /zones/:zone_identifier/settings/always_online
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/always_online" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "always_online",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Automatic HTTPS Rewrites setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable the Automatic HTTPS Rewrites feature for this zone.

                      GET /zones/:zone_identifier/settings/automatic_https_rewrites
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/automatic_https_rewrites" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get Browser Cache TTL setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Browser Cache TTL (in seconds) specifies how long CloudFlare-cached resources will remain on your visitors' computers. CloudFlare will honor any larger times specified by your server. (https://support.cloudflare.com/hc/en-us/articles/200168276)

                      GET /zones/:zone_identifier/settings/browser_cache_ttl
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/browser_cache_ttl" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "browser_cache_ttl",
                          "value": 14400,
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Browser Check setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Browser Integrity Check is similar to Bad Behavior and looks for common HTTP headers abused most commonly by spammers and denies access to your page. It will also challenge visitors that do not have a user agent or a non standard user agent (also commonly used by abuse bots, crawlers or visitors). (https://support.cloudflare.com/hc/en-us/articles/200170086)

                      GET /zones/:zone_identifier/settings/browser_check
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/browser_check" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "browser_check",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Cache Level setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Cache Level functions based off the setting level. The basic setting will cache most static resources (i.e., css, images, and JavaScript). The simplified setting will ignore the query string when delivering a cached resource. The aggressive setting will cache all static resources, including ones with a query string. (https://support.cloudflare.com/hc/en-us/articles/200168256)

                      GET /zones/:zone_identifier/settings/cache_level
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/cache_level" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "cache_level",
                          "value": "aggressive",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Challenge TTL setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Specify how long a visitor is allowed access to your site after successfully completing a challenge (such as a CAPTCHA). After the TTL has expired the visitor will have to complete a new challenge. We recommend a 15 - 45 minute setting and will attempt to honor any setting above 45 minutes. (https://support.cloudflare.com/hc/en-us/articles/200170136)

                      GET /zones/:zone_identifier/settings/challenge_ttl
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/challenge_ttl" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "challenge_ttl",
                          "value": 1800,
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Development Mode setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Development Mode temporarily allows you to enter development mode for your websites if you need to make changes to your site. This will bypass CloudFlare's accelerated cache and slow down your site, but is useful if you are making changes to cacheable content (like images, css, or JavaScript) and would like to see those changes right away. Once entered, development mode will last for 3 hours and then automatically toggle off.

                      GET /zones/:zone_identifier/settings/development_mode
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/development_mode" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "development_mode",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z",
                          "time_remaining": 3600
                        }
                      }

                      GET Get Email Obfuscation setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Encrypt email adresses on your web page from bots, while keeping them visible to humans. (https://support.cloudflare.com/hc/en-us/articles/200170016)

                      GET /zones/:zone_identifier/settings/email_obfuscation
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/email_obfuscation" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "email_obfuscation",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get IP Geolocation setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable IP Geolocation to have CloudFlare geolocate visitors to your website and pass the country code to you. (https://support.cloudflare.com/hc/en-us/articles/200168236)

                      GET /zones/:zone_identifier/settings/ip_geolocation
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/ip_geolocation" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "ip_geolocation",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get IPv6 setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable IPv6 on all subdomains that are CloudFlare enabled. (https://support.cloudflare.com/hc/en-us/articles/200168586)

                      GET /zones/:zone_identifier/settings/ipv6
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/ipv6" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "ipv6",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Minify setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Automatically minify certain assets for your website (https://support.cloudflare.com/hc/en-us/articles/200168196).

                      GET /zones/:zone_identifier/settings/minify
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/minify" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "minify",
                          "value": {
                            "css": "off",
                            "html": "off",
                            "js": "off"
                          },
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Mobile Redirect setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Automatically redirect visitors on mobile devices to a mobile-optimized subdomain (https://support.cloudflare.com/hc/en-us/articles/200168336).

                      GET /zones/:zone_identifier/settings/mobile_redirect
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/mobile_redirect" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "mobile_redirect",
                          "value": {
                            "status": "off",
                            "mobile_subdomain": "m",
                            "strip_uri": false
                          },
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Mirage setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Automatically optimize image loading for website visitors on mobile devices (http://blog.cloudflare.com/mirage2-solving-mobile-speed).

                      GET /zones/:zone_identifier/settings/mirage
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/mirage" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "mirage",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Enable Error Pages On setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      CloudFlare will proxy customer error pages on any 502,504 errors on origin server instead of showing a default CloudFlare error page. This does not apply to 522 errors and is limited to Enterprise Zones.

                      GET /zones/:zone_identifier/settings/origin_error_page_pass_thru
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/origin_error_page_pass_thru" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get Opportunistic Encryption setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable the Opportunistic Encryption feature for this zone.

                      GET /zones/:zone_identifier/settings/opportunistic_encryption
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/opportunistic_encryption" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "on"
                      }

                      GET Get Polish setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Strips metadata and compresses your images for faster page load times. Basic (Lossless): Reduce the size of PNG, JPEG, and GIF files - no impact on visual quality. Basic + JPEG (Lossy): Further reduce the size of JPEG files for faster image loading. Larger JPEGs are converted to progressive images, loading a lower-resolution image first and ending in a higher-resolution version. Not recommended for hi-res photography sites.

                      GET /zones/:zone_identifier/settings/polish
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/polish" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "polish",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Prefetch Preload setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      CloudFlare will prefetch any URLs that are included in the response headers. This is limited to Enterprise Zones.

                      GET /zones/:zone_identifier/settings/prefetch_preload
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/prefetch_preload" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get Response Buffering setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enables or disables buffering of responses from the proxied server. CloudFlare may buffer the whole payload to deliver it at once to the client versus allowing it to be delivered in chunks. By default, the proxied server streams directly and is not buffered by CloudFlare. This is limited to Enterprise Zones.

                      GET /zones/:zone_identifier/settings/response_buffering
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/response_buffering" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get Rocket Loader setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Rocket Loader is a general-purpose asynchronous JavaScript loader coupled with a lightweight virtual browser which can safely run any JavaScript code after window.onload. Turning on Rocket Loader will immediately improve a web page's window.onload time (assuming there is JavaScript on the page), which can have a positive impact on your Google search ranking. Automatic Mode: Rocket Loader will automatically run on the JavaScript resources on your site, with no configuration required after turning on automatic mode. Manual Mode: In order to have Rocket Loader execute for a particular script, you must add the following attribute to the script tag: "data-cfasync='true'". As your page passes through CloudFlare, we'll enable Rocket Loader for that particular script. All other JavaScript will continue to execute without CloudFlare touching the script. (https://support.cloudflare.com/hc/en-us/articles/200168056)

                      GET /zones/:zone_identifier/settings/rocket_loader
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/rocket_loader" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "rocket_loader",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Security Header (HSTS) setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      CloudFlare security header for a zone.

                      GET /zones/:zone_identifier/settings/security_header
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/security_header" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "security_header",
                          "value": {
                            "strict_transport_security": {
                              "enabled": true,
                              "max_age": 86400,
                              "include_subdomains": true,
                              "nosniff": true
                            }
                          },
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Security Level setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      Choose the appropriate security profile for your website, which will automatically adjust each of the security settings. If you choose to customize an individual security setting, the profile will become Custom. (https://support.cloudflare.com/hc/en-us/articles/200170056)

                      GET /zones/:zone_identifier/settings/security_level
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/security_level" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "security_level",
                          "value": "medium",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Server Side Exclude setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      If there is sensitive content on your website that you want visible to real visitors, but that you want to hide from suspicious visitors, all you have to do is wrap the content with CloudFlare SSE tags. Wrap any content that you want to be excluded from suspicious visitors in the following SSE tags: <!--sse--><!--/sse-->. For example: <!--sse--> Bad visitors won't see my phone number, 555-555-5555 <!--/sse-->. Note: SSE only will work with HTML. If you have HTML minification enabled, you won't see the SSE tags in your HTML source when it's served through CloudFlare. SSE will still function in this case, as CloudFlare's HTML minification and SSE functionality occur on-the-fly as the resource moves through our network to the visitor's computer. (https://support.cloudflare.com/hc/en-us/articles/200170036)

                      GET /zones/:zone_identifier/settings/server_side_exclude
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/server_side_exclude" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "server_side_exclude",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Enable Query String Sort setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      CloudFlare will treat files with the same query strings as the same file in cache, regardless of the order of the query strings. This is limited to Enterprise Zones.

                      GET /zones/:zone_identifier/settings/sort_query_string_for_cache
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/sort_query_string_for_cache" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get SSL setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      SSL encrypts your visitor's connection and safeguards credit card numbers and other personal data to and from your website. SSL can take up to 5 minutes to fully activate. Requires CloudFlare active on your root domain or www domain. Off: no SSL between the visitor and CloudFlare, and no SSL between CloudFlare and your web server (all HTTP traffic). Flexible: SSL between the visitor and CloudFlare -- visitor sees HTTPS on your site, but no SSL between CloudFlare and your web server. You don't need to have an SSL cert on your web server, but your vistors will still see the site as being HTTPS enabled. Full: SSL between the visitor and CloudFlare -- visitor sees HTTPS on your site, and SSL between CloudFlare and your web server. You'll need to have your own SSL cert or self-signed cert at the very least. Full (Strict): SSL between the visitor and CloudFlare -- visitor sees HTTPS on your site, and SSL between CloudFlare and your web server. You'll need to have a valid SSL certificate installed on your web server. This certificate must be signed by a certificate authority, have an expiration date in the future, and respond for the request domain name (hostname). (https://support.cloudflare.com/hc/en-us/articles/200170416)

                      GET /zones/:zone_identifier/settings/ssl
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/ssl" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "ssl",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get Zone Enable TLS 1.2 setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable Crypto TLS 1.2 feature for this zone and prevent use of previous versions. This is limited to Enterprise or Business Zones.

                      GET /zones/:zone_identifier/settings/tls_1_2_only
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/tls_1_2_only" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get Zone Enable TLS 1.3 setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable Crypto TLS 1.3 feature for this zone.

                      GET /zones/:zone_identifier/settings/tls_1_3
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/tls_1_3" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get TLS Client Auth setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      TLS Client Auth requires CloudFlare to connect to your origin server using a client certificate (Enterprise Only)

                      GET /zones/:zone_identifier/settings/tls_client_auth
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/tls_client_auth" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "tls_client_auth",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get True Client IP setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Allows customer to continue to use True Client IP (Akamai feature) in the headers we send to the origin. This is limited to Enterprise Zones.

                      GET /zones/:zone_identifier/settings/true_client_ip_header
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/true_client_ip_header" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      GET Get Web Application Firewall (WAF) setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      The WAF examines HTTP requests to your website. It inspects both GET and POST requests and applies rules to help filter out illegitimate traffic from legitimate website visitors. The CloudFlare WAF inspects website addresses or URLs to detect anything out of the ordinary. If the CloudFlare WAF determines suspicious user behavior, then the WAF will ‘challenge’ the web visitor with a page that asks them to submit a CAPTCHA successfully to continue their action. If the challenge is failed, the action will be stopped. What this means is that CloudFlare’s WAF will block any traffic identified as illegitimate before it reaches your origin web server. (https://support.cloudflare.com/hc/en-us/articles/200172016)

                      GET /zones/:zone_identifier/settings/waf
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/waf" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "waf",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      GET Get WebSockets setting permission needed: #zone_settings:read
                      • free
                      • pro
                      • business
                      • enterprise

                      WebSockets are open connections sustained between the client and the origin server. Inside a WebSockets connection, the client and the origin can pass data back and forth without having to reestablish sessions. This makes exchanging data within a WebSockets connection fast. WebSockets are often used for real-time applications such as live chat and gaming. (https://support.cloudflare.com/hc/en-us/articles/200169466-Can-I-use-CloudFlare-with-WebSockets-)

                      GET /zones/:zone_identifier/settings/websockets
                      cURL (example)
                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/websockets" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json"
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "websockets",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Edit zone settings info permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Edit settings for a zone

                      PATCH /zones/:zone_identifier/settings

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      items
                      array

                      One or more zone setting objects. Must contain an ID and a value.

                      [ { "id": "always_online", "value": "on" }, { "id": "browser_cache_ttl", "value": 18000 }, { "id": "ip_geolocation", "value": "off" } ]
                      • min value: 1
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"items":[{"id":"always_online","value":"on"},{"id":"browser_cache_ttl","value":18000},{"id":"ip_geolocation","value":"off"}]}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": [
                          {
                            "id": "always_online",
                            "value": "on",
                            "editable": true,
                            "modified_on": "2014-01-01T05:20:00.12345Z"
                          }
                        ],
                        "result_info": {
                          "page": 1,
                          "per_page": 20,
                          "count": 1,
                          "total_count": 2000
                        }
                      }

                      PATCH Change Always Online setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      When enabled, Always Online will serve pages from our cache if your server is offline (https://support.cloudflare.com/hc/en-us/articles/200168006)

                      PATCH /zones/:zone_identifier/settings/always_online

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "on"
                      • default value: on
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/always_online" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"on"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "always_online",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Automatic HTTPS Rewrites setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable the Automatic HTTPS Rewrites feature for this zone.

                      PATCH /zones/:zone_identifier/settings/automatic_https_rewrites

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value

                      Enable the Automatic HTTPS Rewrites feature for this zone.

                      "off"
                      • default value: off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/automatic_https_rewrites" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"off"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      PATCH Change Browser Cache TTL setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Browser Cache TTL (in seconds) specifies how long CloudFlare-cached resources will remain on your visitors' computers. CloudFlare will honor any larger times specified by your server. (https://support.cloudflare.com/hc/en-us/articles/200168276)

                      PATCH /zones/:zone_identifier/settings/browser_cache_ttl

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      number

                      Value of the zone setting

                      14400
                      • default value: 14400
                      • valid values: 30, 60, 300, 1200, 1800, 3600, 7200, 10800, 14400, 18000, 28800, 43200, 57600, 72000, 86400, 172800, 259200, 345600, 432000, 691200, 1382400, 2073600, 2678400, 5356800, 16070400, 31536000
                      • notes: The minimum TTL available depends on the plan level of the zone. (Enterprise = 30, Business = 1800, Pro = 1800, Free = 1800)
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/browser_cache_ttl" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":14400}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "browser_cache_ttl",
                          "value": 14400,
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Browser Check setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Browser Integrity Check is similar to Bad Behavior and looks for common HTTP headers abused most commonly by spammers and denies access to your page. It will also challenge visitors that do not have a user agent or a non standard user agent (also commonly used by abuse bots, crawlers or visitors). (https://support.cloudflare.com/hc/en-us/articles/200170086)

                      PATCH /zones/:zone_identifier/settings/browser_check

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "on"
                      • default value: on
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/browser_check" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"on"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "browser_check",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Cache Level setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Cache Level functions based off the setting level. The basic setting will cache most static resources (i.e., css, images, and JavaScript). The simplified setting will ignore the query string when delivering a cached resource. The aggressive setting will cache all static resources, including ones with a query string. (https://support.cloudflare.com/hc/en-us/articles/200168256)

                      PATCH /zones/:zone_identifier/settings/cache_level

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "aggressive"
                      • default value: aggressive
                      • valid values: aggressive, basic, simplified
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/cache_level" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"aggressive"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "cache_level",
                          "value": "aggressive",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Challenge TTL setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Specify how long a visitor is allowed access to your site after successfully completing a challenge (such as a CAPTCHA). After the TTL has expired the visitor will have to complete a new challenge. We recommend a 15 - 45 minute setting and will attempt to honor any setting above 45 minutes. (https://support.cloudflare.com/hc/en-us/articles/200170136)

                      PATCH /zones/:zone_identifier/settings/challenge_ttl

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      number

                      Value of the zone setting

                      1800
                      • default value: 1800
                      • valid values: 300, 900, 1800, 2700, 3600, 7200, 10800, 14400, 28800, 57600, 86400, 604800, 2592000, 31536000
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/challenge_ttl" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":1800}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "challenge_ttl",
                          "value": 1800,
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Development Mode setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Development Mode temporarily allows you to enter development mode for your websites if you need to make changes to your site. This will bypass CloudFlare's accelerated cache and slow down your site, but is useful if you are making changes to cacheable content (like images, css, or JavaScript) and would like to see those changes right away. Once entered, development mode will last for 3 hours and then automatically toggle off.

                      PATCH /zones/:zone_identifier/settings/development_mode

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "off"
                      • default value: off
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/development_mode" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"off"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "development_mode",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z",
                          "time_remaining": 3600
                        }
                      }

                      PATCH Change Email Obfuscation setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Encrypt email adresses on your web page from bots, while keeping them visible to humans. (https://support.cloudflare.com/hc/en-us/articles/200170016)

                      PATCH /zones/:zone_identifier/settings/email_obfuscation

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "on"
                      • default value: on
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/email_obfuscation" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"on"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "email_obfuscation",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Enable Error Pages On setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      CloudFlare will proxy customer error pages on any 502,504 errors on origin server instead of showing a default CloudFlare error page. This does not apply to 522 errors and is limited to Enterprise Zones.

                      PATCH /zones/:zone_identifier/settings/origin_error_page_pass_thru

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "off"
                      • default value: off
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/origin_error_page_pass_thru" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"off"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      PATCH Change Enable Query String Sort setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      CloudFlare will treat files with the same query strings as the same file in cache, regardless of the order of the query strings. This is limited to Enterprise Zones.

                      PATCH /zones/:zone_identifier/settings/sort_query_string_for_cache

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "off"
                      • default value: off
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/sort_query_string_for_cache" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"off"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": "off"
                      }

                      PATCH Change IP Geolocation setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable IP Geolocation to have CloudFlare geolocate visitors to your website and pass the country code to you. (https://support.cloudflare.com/hc/en-us/articles/200168236)

                      PATCH /zones/:zone_identifier/settings/ip_geolocation

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "on"
                      • default value: on
                      • valid values: on, off
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/ip_geolocation" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"on"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "ip_geolocation",
                          "value": "on",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change IPv6 setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Enable IPv6 on all subdomains that are CloudFlare enabled. (https://support.cloudflare.com/hc/en-us/articles/200168586)

                      PATCH /zones/:zone_identifier/settings/ipv6

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      string

                      Value of the zone setting

                      "off"
                      • default value: off
                      • valid values: off, on
                      cURL (example)
                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/ipv6" \
                           -H "X-Auth-Email: user@example.com" \
                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                           -H "Content-Type: application/json" \
                           --data '{"value":"off"}'
                      Response (example)
                      {
                        "success": true,
                        "errors": [],
                        "messages": [],
                        "result": {
                          "id": "ipv6",
                          "value": "off",
                          "editable": true,
                          "modified_on": "2014-01-01T05:20:00.12345Z"
                        }
                      }

                      PATCH Change Minify setting permission needed: #zone_settings:edit
                      • free
                      • pro
                      • business
                      • enterprise

                      Automatically minify certain assets for your website (https://support.cloudflare.com/hc/en-us/articles/200168196).

                      PATCH /zones/:zone_identifier/settings/minify

                      Required parameters

                      Name /typeDescription /exampleConstraints
                      value
                      object

                      Value of the zone setting

                      { "css": "off", "html": "off", "js": "off" }
                        cURL (example)
                        curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/minify" \
                             -H "X-Auth-Email: user@example.com" \
                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                             -H "Content-Type: application/json" \
                             --data '{"value":{"css":"off","html":"off","js":"off"}}'
                        Response (example)
                        {
                          "success": true,
                          "errors": [],
                          "messages": [],
                          "result": {
                            "id": "minify",
                            "value": {
                              "css": "off",
                              "html": "off",
                              "js": "off"
                            },
                            "editable": true,
                            "modified_on": "2014-01-01T05:20:00.12345Z"
                          }
                        }

                        PATCH Change Mobile Redirect setting permission needed: #zone_settings:edit
                        • free
                        • pro
                        • business
                        • enterprise

                        Automatically redirect visitors on mobile devices to a mobile-optimized subdomain (https://support.cloudflare.com/hc/en-us/articles/200168336).

                        PATCH /zones/:zone_identifier/settings/mobile_redirect

                        Required parameters

                        Name /typeDescription /exampleConstraints
                        value
                        object

                        Value of the zone setting

                        { "status": "off", "mobile_subdomain": "m", "strip_uri": false }
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/mobile_redirect" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":{"status":"off","mobile_subdomain":"m","strip_uri":false}}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": {
                              "id": "mobile_redirect",
                              "value": {
                                "status": "off",
                                "mobile_subdomain": "m",
                                "strip_uri": false
                              },
                              "editable": true,
                              "modified_on": "2014-01-01T05:20:00.12345Z"
                            }
                          }

                          PATCH Change Mirage setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          Automatically optimize image loading for website visitors on mobile devices (http://blog.cloudflare.com/mirage2-solving-mobile-speed).

                          PATCH /zones/:zone_identifier/settings/mirage

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value
                          string

                          Value of the zone setting

                          "off"
                          • default value: off
                          • valid values: on, off
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/mirage" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":"off"}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": {
                              "id": "mirage",
                              "value": "off",
                              "editable": true,
                              "modified_on": "2014-01-01T05:20:00.12345Z"
                            }
                          }

                          PATCH Change Opportunistic Encryption setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          Enable the Opportunistic Encryption feature for this zone.

                          PATCH /zones/:zone_identifier/settings/opportunistic_encryption

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value

                          Enable the Opportunistic Encryption feature for this zone.

                          "on"
                          • default value: on
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/opportunistic_encryption" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":"on"}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": "on"
                          }

                          PATCH Change Polish setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          Strips metadata and compresses your images for faster page load times. Basic (Lossless): Reduce the size of PNG, JPEG, and GIF files - no impact on visual quality. Basic + JPEG (Lossy): Further reduce the size of JPEG files for faster image loading. Larger JPEGs are converted to progressive images, loading a lower-resolution image first and ending in a higher-resolution version. Not recommended for hi-res photography sites.

                          PATCH /zones/:zone_identifier/settings/polish

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value
                          string

                          Value of the zone setting

                          "off"
                          • default value: off
                          • valid values: off, lossless, lossy
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/polish" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":"off"}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": {
                              "id": "polish",
                              "value": "off",
                              "editable": true,
                              "modified_on": "2014-01-01T05:20:00.12345Z"
                            }
                          }

                          PATCH Change Prefetch Preload setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          CloudFlare will prefetch any URLs that are included in the response headers. This is limited to Enterprise Zones.

                          PATCH /zones/:zone_identifier/settings/prefetch_preload

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value
                          string

                          Value of the zone setting

                          "off"
                          • default value: off
                          • valid values: on, off
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/prefetch_preload" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":"off"}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": "off"
                          }

                          PATCH Change Response Buffering setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          Enables or disables buffering of responses from the proxied server. CloudFlare may buffer the whole payload to deliver it at once to the client versus allowing it to be delivered in chunks. By default, the proxied server streams directly and is not buffered by CloudFlare. This is limited to Enterprise Zones.

                          PATCH /zones/:zone_identifier/settings/response_buffering

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value
                          string

                          Value of the zone setting

                          "off"
                          • default value: off
                          • valid values: on, off
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/response_buffering" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":"off"}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": "off"
                          }

                          PATCH Change Rocket Loader setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          Rocket Loader is a general-purpose asynchronous JavaScript loader coupled with a lightweight virtual browser which can safely run any JavaScript code after window.onload. Turning on Rocket Loader will immediately improve a web page's window.onload time (assuming there is JavaScript on the page), which can have a positive impact on your Google search ranking. Automatic Mode: Rocket Loader will automatically run on the JavaScript resources on your site, with no configuration required after turning on automatic mode. Manual Mode: In order to have Rocket Loader execute for a particular script, you must add the following attribute to the script tag: "data-cfasync='true'". As your page passes through CloudFlare, we'll enable Rocket Loader for that particular script. All other JavaScript will continue to execute without CloudFlare touching the script. (https://support.cloudflare.com/hc/en-us/articles/200168056)

                          PATCH /zones/:zone_identifier/settings/rocket_loader

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value
                          string

                          Value of the zone setting

                          "off"
                          • default value: off
                          • valid values: on, off, manual
                          cURL (example)
                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/rocket_loader" \
                               -H "X-Auth-Email: user@example.com" \
                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                               -H "Content-Type: application/json" \
                               --data '{"value":"off"}'
                          Response (example)
                          {
                            "success": true,
                            "errors": [],
                            "messages": [],
                            "result": {
                              "id": "rocket_loader",
                              "value": "off",
                              "editable": true,
                              "modified_on": "2014-01-01T05:20:00.12345Z"
                            }
                          }

                          PATCH Change Security Header (HSTS) setting permission needed: #zone_settings:edit
                          • free
                          • pro
                          • business
                          • enterprise

                          CloudFlare security header for a zone.

                          PATCH /zones/:zone_identifier/settings/security_header

                          Required parameters

                          Name /typeDescription /exampleConstraints
                          value
                          object
                          { "strict_transport_security": { "enabled": true, "max_age": 86400, "include_subdomains": true, "nosniff": true } }
                            cURL (example)
                            curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/security_header" \
                                 -H "X-Auth-Email: user@example.com" \
                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                 -H "Content-Type: application/json" \
                                 --data '{"value":{"strict_transport_security":{"enabled":true,"max_age":86400,"include_subdomains":true,"nosniff":true}}}'
                            Response (example)
                            {
                              "success": true,
                              "errors": [],
                              "messages": [],
                              "result": {
                                "id": "security_header",
                                "value": {
                                  "strict_transport_security": {
                                    "enabled": true,
                                    "max_age": 86400,
                                    "include_subdomains": true,
                                    "nosniff": true
                                  }
                                },
                                "editable": true,
                                "modified_on": "2014-01-01T05:20:00.12345Z"
                              }
                            }

                            PATCH Change Security Level setting permission needed: #zone_settings:edit
                            • free
                            • pro
                            • business
                            • enterprise

                            Choose the appropriate security profile for your website, which will automatically adjust each of the security settings. If you choose to customize an individual security setting, the profile will become Custom. (https://support.cloudflare.com/hc/en-us/articles/200170056)

                            PATCH /zones/:zone_identifier/settings/security_level

                            Required parameters

                            Name /typeDescription /exampleConstraints
                            value
                            string

                            Value of the zone setting

                            "medium"
                            • default value: medium
                            • valid values: essentially_off, low, medium, high, under_attack
                            cURL (example)
                            curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/security_level" \
                                 -H "X-Auth-Email: user@example.com" \
                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                 -H "Content-Type: application/json" \
                                 --data '{"value":"medium"}'
                            Response (example)
                            {
                              "success": true,
                              "errors": [],
                              "messages": [],
                              "result": {
                                "id": "security_level",
                                "value": "medium",
                                "editable": true,
                                "modified_on": "2014-01-01T05:20:00.12345Z"
                              }
                            }

                            PATCH Change Server Side Exclude setting permission needed: #zone_settings:edit
                            • free
                            • pro
                            • business
                            • enterprise

                            If there is sensitive content on your website that you want visible to real visitors, but that you want to hide from suspicious visitors, all you have to do is wrap the content with CloudFlare SSE tags. Wrap any content that you want to be excluded from suspicious visitors in the following SSE tags: <!--sse--><!--/sse-->. For example: <!--sse--> Bad visitors won't see my phone number, 555-555-5555 <!--/sse-->. Note: SSE only will work with HTML. If you have HTML minification enabled, you won't see the SSE tags in your HTML source when it's served through CloudFlare. SSE will still function in this case, as CloudFlare's HTML minification and SSE functionality occur on-the-fly as the resource moves through our network to the visitor's computer. (https://support.cloudflare.com/hc/en-us/articles/200170036)

                            PATCH /zones/:zone_identifier/settings/server_side_exclude

                            Required parameters

                            Name /typeDescription /exampleConstraints
                            value
                            string

                            Value of the zone setting

                            "on"
                            • default value: on
                            • valid values: on, off
                            cURL (example)
                            curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/server_side_exclude" \
                                 -H "X-Auth-Email: user@example.com" \
                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                 -H "Content-Type: application/json" \
                                 --data '{"value":"on"}'
                            Response (example)
                            {
                              "success": true,
                              "errors": [],
                              "messages": [],
                              "result": {
                                "id": "server_side_exclude",
                                "value": "on",
                                "editable": true,
                                "modified_on": "2014-01-01T05:20:00.12345Z"
                              }
                            }

                            PATCH Change SSL setting permission needed: #zone_settings:edit
                            • free
                            • pro
                            • business
                            • enterprise

                            SSL encrypts your visitor's connection and safeguards credit card numbers and other personal data to and from your website. SSL can take up to 5 minutes to fully activate. Requires CloudFlare active on your root domain or www domain. Off: no SSL between the visitor and CloudFlare, and no SSL between CloudFlare and your web server (all HTTP traffic). Flexible: SSL between the visitor and CloudFlare -- visitor sees HTTPS on your site, but no SSL between CloudFlare and your web server. You don't need to have an SSL cert on your web server, but your vistors will still see the site as being HTTPS enabled. Full: SSL between the visitor and CloudFlare -- visitor sees HTTPS on your site, and SSL between CloudFlare and your web server. You'll need to have your own SSL cert or self-signed cert at the very least. Full (Strict): SSL between the visitor and CloudFlare -- visitor sees HTTPS on your site, and SSL between CloudFlare and your web server. You'll need to have a valid SSL certificate installed on your web server. This certificate must be signed by a certificate authority, have an expiration date in the future, and respond for the request domain name (hostname). (https://support.cloudflare.com/hc/en-us/articles/200170416)

                            PATCH /zones/:zone_identifier/settings/ssl

                            Required parameters

                            Name /typeDescription /exampleConstraints
                            value
                            string

                            Value of the zone setting

                            "off"
                            • default value: off
                            • valid values: off, flexible, full, full_strict
                            • notes: Depends on the zone's plan level
                            cURL (example)
                            curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/ssl" \
                                 -H "X-Auth-Email: user@example.com" \
                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                 -H "Content-Type: application/json" \
                                 --data '{"value":"off"}'
                            Response (example)
                            {
                              "success": true,
                              "errors": [],
                              "messages": [],
                              "result": {
                                "id": "ssl",
                                "value": "off",
                                "editable": true,
                                "modified_on": "2014-01-01T05:20:00.12345Z"
                              }
                            }

                            PATCH Change TLS Client Auth setting permission needed: #zone_settings:edit
                            • free
                            • pro
                            • business
                            • enterprise

                            TLS Client Auth requires CloudFlare to connect to your origin server using a client certificate (Enterprise Only)

                            PATCH /zones/:zone_identifier/settings/tls_client_auth

                            Required parameters

                            Name /typeDescription /exampleConstraints
                            value

                            TLS Client Auth requires CloudFlare to connect to your origin server using a client certificate (Enterprise Only)

                            { "id": "tls_client_auth", "value": "on", "editable": true, "modified_on": "2014-01-01T05:20:00.12345Z" }
                              cURL (example)
                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/tls_client_auth" \
                                   -H "X-Auth-Email: user@example.com" \
                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                   -H "Content-Type: application/json" \
                                   --data '{"value":{"id":"tls_client_auth","value":"on","editable":true,"modified_on":"2014-01-01T05:20:00.12345Z"}}'
                              Response (example)
                              {
                                "success": true,
                                "errors": [],
                                "messages": [],
                                "result": {
                                  "id": "tls_client_auth",
                                  "value": "on",
                                  "editable": true,
                                  "modified_on": "2014-01-01T05:20:00.12345Z"
                                }
                              }

                              PATCH Change True Client IP setting permission needed: #zone_settings:edit
                              • free
                              • pro
                              • business
                              • enterprise

                              Allows customer to continue to use True Client IP (Akamai feature) in the headers we send to the origin. This is limited to Enterprise Zones.

                              PATCH /zones/:zone_identifier/settings/true_client_ip_header

                              Required parameters

                              Name /typeDescription /exampleConstraints
                              value
                              string

                              Value of the zone setting

                              "off"
                              • default value: off
                              • valid values: on, off
                              cURL (example)
                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/true_client_ip_header" \
                                   -H "X-Auth-Email: user@example.com" \
                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                   -H "Content-Type: application/json" \
                                   --data '{"value":"off"}'
                              Response (example)
                              {
                                "success": true,
                                "errors": [],
                                "messages": [],
                                "result": "off"
                              }

                              PATCH Change TLS 1.2 setting permission needed: #zone_settings:edit
                              • free
                              • pro
                              • business
                              • enterprise

                              Enable Crypto TLS 1.2 feature for this zone and prevent use of previous versions. This is limited to Enterprise or Business Zones.

                              PATCH /zones/:zone_identifier/settings/tls_1_2_only

                              Required parameters

                              Name /typeDescription /exampleConstraints
                              value
                              string

                              Value of the zone setting

                              "off"
                              • default value: off
                              • valid values: on, off
                              cURL (example)
                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/tls_1_2_only" \
                                   -H "X-Auth-Email: user@example.com" \
                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                   -H "Content-Type: application/json" \
                                   --data '{"value":"off"}'
                              Response (example)
                              {
                                "success": true,
                                "errors": [],
                                "messages": [],
                                "result": "off"
                              }

                              PATCH Change TLS 1.3 setting permission needed: #zone_settings:edit
                              • free
                              • pro
                              • business
                              • enterprise

                              Enable Crypto TLS 1.3 feature for this zone.

                              PATCH /zones/:zone_identifier/settings/tls_1_3

                              Required parameters

                              Name /typeDescription /exampleConstraints
                              value
                              string

                              Value of the zone setting

                              "off"
                              • default value: off
                              • valid values: on, off
                              • notes: Default value depends on the zone's plan level.
                              cURL (example)
                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/tls_1_3" \
                                   -H "X-Auth-Email: user@example.com" \
                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                   -H "Content-Type: application/json" \
                                   --data '{"value":"off"}'
                              Response (example)
                              {
                                "success": true,
                                "errors": [],
                                "messages": [],
                                "result": "off"
                              }

                              PATCH Change Web Application Firewall (WAF) setting permission needed: #zone_settings:edit
                              • free
                              • pro
                              • business
                              • enterprise

                              The WAF examines HTTP requests to your website. It inspects both GET and POST requests and applies rules to help filter out illegitimate traffic from legitimate website visitors. The CloudFlare WAF inspects website addresses or URLs to detect anything out of the ordinary. If the CloudFlare WAF determines suspicious user behavior, then the WAF will ‘challenge’ the web visitor with a page that asks them to submit a CAPTCHA successfully to continue their action. If the challenge is failed, the action will be stopped. What this means is that CloudFlare’s WAF will block any traffic identified as illegitimate before it reaches your origin web server. (https://support.cloudflare.com/hc/en-us/articles/200172016)

                              PATCH /zones/:zone_identifier/settings/waf

                              Required parameters

                              Name /typeDescription /exampleConstraints
                              value
                              string

                              Value of the zone setting

                              "off"
                              • default value: off
                              • valid values: on, off
                              cURL (example)
                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/waf" \
                                   -H "X-Auth-Email: user@example.com" \
                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                   -H "Content-Type: application/json" \
                                   --data '{"value":"off"}'
                              Response (example)
                              {
                                "success": true,
                                "errors": [],
                                "messages": [],
                                "result": {
                                  "id": "waf",
                                  "value": "off",
                                  "editable": true,
                                  "modified_on": "2014-01-01T05:20:00.12345Z"
                                }
                              }

                              PATCH Change WebSockets setting permission needed: #zone_settings:edit
                              • free
                              • pro
                              • business
                              • enterprise

                              WebSockets are open connections sustained between the client and the origin server. Inside a WebSockets connection, the client and the origin can pass data back and forth without having to reestablish sessions. This makes exchanging data within a WebSockets connection fast. WebSockets are often used for real-time applications such as live chat and gaming. (https://support.cloudflare.com/hc/en-us/articles/200169466-Can-I-use-CloudFlare-with-WebSockets-)

                              PATCH /zones/:zone_identifier/settings/websockets

                              Required parameters

                              Name /typeDescription /exampleConstraints
                              value
                              string

                              Value of the zone setting

                              "off"
                              • default value: off
                              • valid values: off, on
                              cURL (example)
                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/settings/websockets" \
                                   -H "X-Auth-Email: user@example.com" \
                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                   -H "Content-Type: application/json" \
                                   --data '{"value":"off"}'
                              Response (example)
                              {
                                "success": true,
                                "errors": [],
                                "messages": [],
                                "result": {
                                  "id": "websockets",
                                  "value": "off",
                                  "editable": true,
                                  "modified_on": "2014-01-01T05:20:00.12345Z"
                                }
                              }

                              DNS Records for a Zone

                              Documentation for CloudFlare DNS records

                              Object definitions

                              View properties and constraints defined on the object

                              Show definitions

                              POST Create DNS record permission needed: #dns_records:edit
                              • free
                              • pro
                              • business
                              • enterprise

                              Create a new DNS record for a zone. See the record object definitions for required attributes for each record type

                              POST /zones/:zone_identifier/dns_records

                              Required parameters

                              Name /typeDescription /exampleConstraints
                              type
                              string

                              DNS record type

                              "A"
                              • valid values: A, AAAA, CNAME, TXT, SRV, LOC, MX, NS, SPF
                              • read only
                              name
                              string

                              DNS record name

                              "example.com"
                              • max length: 255
                              content
                              string

                              DNS record content

                              "127.0.0.1"

                                Optional parameters

                                Name /typeDescription /exampleConstraints
                                ttl
                                number

                                Time to live for DNS record. Value of 1 is 'automatic'

                                120
                                • min value: 1
                                • max value: 2147483647
                                cURL (example)
                                curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records" \
                                     -H "X-Auth-Email: user@example.com" \
                                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                     -H "Content-Type: application/json" \
                                     --data '{"type":"A","name":"example.com","content":"127.0.0.1","ttl":120}'
                                Response (example)
                                {
                                  "success": true,
                                  "errors": [],
                                  "messages": [],
                                  "result": {
                                    "id": "372e67954025e0ba6aaa6d586b9e0b59",
                                    "type": "A",
                                    "name": "example.com",
                                    "content": "1.2.3.4",
                                    "proxiable": true,
                                    "proxied": false,
                                    "ttl": 120,
                                    "locked": false,
                                    "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                    "zone_name": "example.com",
                                    "created_on": "2014-01-01T05:20:00.12345Z",
                                    "modified_on": "2014-01-01T05:20:00.12345Z",
                                    "data": {}
                                  }
                                }

                                GET List DNS Records permission needed: #dns_records:read
                                • free
                                • pro
                                • business
                                • enterprise

                                List, search, sort, and filter a zones' DNS records.

                                GET /zones/:zone_identifier/dns_records

                                Optional parameters

                                Name /typeDescription /exampleConstraints
                                type
                                string

                                DNS record type

                                "A"
                                • valid values: A, AAAA, CNAME, TXT, SRV, LOC, MX, NS, SPF
                                • read only
                                name
                                string

                                DNS record name

                                "example.com"
                                • max length: 255
                                content
                                string

                                DNS record content

                                "127.0.0.1"
                                  page
                                  number

                                  Page number of paginated results

                                  1
                                  • default value: 1
                                  • min value: 1
                                  per_page
                                  number

                                  Number of DNS records per page

                                  20
                                  • default value: 20
                                  • min value: 5
                                  • max value: 100
                                  order
                                  string

                                  Field to order records by

                                  "type"
                                  • valid values: type, name, content, ttl, proxied
                                  direction
                                  string

                                  Direction to order domains

                                  "desc"
                                  • valid values: asc, desc
                                  match
                                  string

                                  Whether to match all search requirements or at least one (any)

                                  "all"
                                  • default value: all
                                  • valid values: any, all
                                  cURL (example)
                                  curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records?type=A&name=example.com&content=127.0.0.1&page=1&per_page=20&order=type&direction=desc&match=all" \
                                       -H "X-Auth-Email: user@example.com" \
                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                       -H "Content-Type: application/json"
                                  Response (example)
                                  {
                                    "success": true,
                                    "errors": [],
                                    "messages": [],
                                    "result": [
                                      {
                                        "id": "372e67954025e0ba6aaa6d586b9e0b59",
                                        "type": "A",
                                        "name": "example.com",
                                        "content": "1.2.3.4",
                                        "proxiable": true,
                                        "proxied": false,
                                        "ttl": 120,
                                        "locked": false,
                                        "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                        "zone_name": "example.com",
                                        "created_on": "2014-01-01T05:20:00.12345Z",
                                        "modified_on": "2014-01-01T05:20:00.12345Z",
                                        "data": {}
                                      }
                                    ],
                                    "result_info": {
                                      "page": 1,
                                      "per_page": 20,
                                      "count": 1,
                                      "total_count": 2000
                                    }
                                  }

                                  GET DNS record details permission needed: #dns_records:read
                                  • free
                                  • pro
                                  • business
                                  • enterprise

                                  GET /zones/:zone_identifier/dns_records/:identifier
                                  cURL (example)
                                  curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records/372e67954025e0ba6aaa6d586b9e0b59" \
                                       -H "X-Auth-Email: user@example.com" \
                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                       -H "Content-Type: application/json"
                                  Response (example)
                                  {
                                    "success": true,
                                    "errors": [],
                                    "messages": [],
                                    "result": {
                                      "id": "372e67954025e0ba6aaa6d586b9e0b59",
                                      "type": "A",
                                      "name": "example.com",
                                      "content": "1.2.3.4",
                                      "proxiable": true,
                                      "proxied": false,
                                      "ttl": 120,
                                      "locked": false,
                                      "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                      "zone_name": "example.com",
                                      "created_on": "2014-01-01T05:20:00.12345Z",
                                      "modified_on": "2014-01-01T05:20:00.12345Z",
                                      "data": {}
                                    }
                                  }

                                  PUT Update DNS record permission needed: #dns_records:edit
                                  • free
                                  • pro
                                  • business
                                  • enterprise

                                  PUT /zones/:zone_identifier/dns_records/:identifier

                                  Required parameters

                                  Name /typeDescription /exampleConstraints
                                  type
                                  string

                                  DNS record type

                                  "A"
                                  • valid values: A, AAAA, CNAME, TXT, SRV, LOC, MX, NS, SPF
                                  • read only
                                  name
                                  string

                                  DNS record name

                                  "example.com"
                                  • max length: 255
                                  content
                                  string

                                  DNS record content

                                  "127.0.0.1"

                                    Optional parameters

                                    Name /typeDescription /exampleConstraints
                                    ttl
                                    number

                                    Time to live for DNS record. Value of 1 is 'automatic'

                                    120
                                    • min value: 1
                                    • max value: 2147483647
                                    proxied
                                    boolean

                                    Whether the record is receiving the performance and security benefits of CloudFlare

                                    false
                                    • valid values: (true,false)
                                    cURL (example)
                                    curl -X PUT "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records/372e67954025e0ba6aaa6d586b9e0b59" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json" \
                                         --data '{"type":"A","name":"example.com","content":"127.0.0.1","ttl":120,"proxied":false}'
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "372e67954025e0ba6aaa6d586b9e0b59",
                                        "type": "A",
                                        "name": "example.com",
                                        "content": "1.2.3.4",
                                        "proxiable": true,
                                        "proxied": false,
                                        "ttl": 120,
                                        "locked": false,
                                        "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                        "zone_name": "example.com",
                                        "created_on": "2014-01-01T05:20:00.12345Z",
                                        "modified_on": "2014-01-01T05:20:00.12345Z",
                                        "data": {}
                                      }
                                    }

                                    DELETE Delete DNS record permission needed: #dns_records:edit
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    DELETE /zones/:zone_identifier/dns_records/:identifier
                                    cURL (example)
                                    curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/dns_records/372e67954025e0ba6aaa6d586b9e0b59" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "372e67954025e0ba6aaa6d586b9e0b59"
                                      }
                                    }

                                    DNS Records for a Zone error codes

                                    CodeDescription
                                    1012Zone file for '<domain name>' is not modifiable
                                    1034Invalid port value. Must be between 0 and 65,535
                                    1045The record could not be found
                                    1056Invalid or missing lat_direction. Values must be N or S
                                    1067Invalid content for a NS record
                                    1002Invalid or missing zone_id
                                    1013The record could not be found
                                    1024Invalid priority, priority must be set and be between 0 and 65535
                                    1046A record with these exact values already exists. Please modify or cancel this edit
                                    1057Invalid long_degrees, must be an integer between 0 and 180
                                    1068Target cannot be an IP address
                                    1003per_page must be a positive integer
                                    1014You do not have permission to modify this zone
                                    1025Invalid content for an MX record
                                    1047You do not have permission to modify this zone
                                    1058Invalid long_minutes, must be an integer between 0 and 59
                                    1069CNAME content cannot reference itself
                                    1004Invalid or missing zone
                                    1015Unknown error
                                    1026Invalid format for a SPF record. A valid example is 'v=spf1 a mx -all'. You should not include either the word TXT or the domain name here in the content
                                    1037Invalid domain name for a SRV target host
                                    1048You have reached the record limit for this zone
                                    1059Invalid long_seconds, must be a floating point number between 0 and 60, including 0 but not including 60
                                    1005Invalid or missing record
                                    1027Invalid service value
                                    1038Invalid DNS record type
                                    1049The record content is missing
                                    1017Content for A record is invalid. Must be a valid IPv4 address
                                    1028Invalid service value. Must be less than 100 characters
                                    1039Invalid TTL. Must be between 120 and 4,294,967,295 seconds, or 1 for automatic
                                    1007name required
                                    1018Content for AAAA record is invalid. Must be a valid IPv6 address
                                    1029Invalid protocol value
                                    1008content required
                                    1019Content for CNAME record is invalid
                                    1009Invalid or missing record id
                                    1070CNAME content cannot be an IP
                                    1060Invalid or missing long_direction. Values must be E or S
                                    1071Invalid proxied mode. Record cannot be proxied
                                    1050Could not find record
                                    1061Invalid altitude, must be a floating point number between -100000.00 and 42849672.95
                                    1072Invalid record identifier
                                    1062Invalid size, must be a floating point number between 0 and 90000000.00
                                    1073Invalid TXT record. Must be less than 255 characters
                                    1030Invalid protocol value. Must be less than 12 characters
                                    1041Priority must be set for SRV record
                                    1052You can not point a CNAME to itself
                                    1063Invalid precision_horz, must be a floating point number between 0 and 90000000.00
                                    1074Invalid TXT record. Record may only contain printable ASCII!
                                    1031Invalid SRV name
                                    1042Zone file for '<domain name>' could not be found
                                    1053Invalid lat_degrees, must be an integer between 0 and 90 inclusive
                                    1064Invalid precision_vert, must be a floating point number between 0 and 90000000.00
                                    1010Invalid or missing record
                                    1032Invalid SRV name. Must be less than 90 characters
                                    1043Zone file for '<domain name>' is not editable
                                    1054Invalid lat_minutes, must be an integer between 0 and 59 inclusive
                                    1065Invalid or missing data for <type> record
                                    1000Invalid user
                                    1011Zone file for '<domain name>' could not be found
                                    1033Invalid weight value. Must be between 0 and 65,535
                                    1044A record with these exact values already exists. Please modify or remove this record
                                    1055Invalid lat_seconds, must be a floating point number between 0 and 60, including 0 but not including 60

                                    DNS Records for a Zone Notes

                                    If a zone's cname_setup_status is TRUE, you may only add A/AAAA and CNAME records for that zone
                                    When adding a CNAME record, it will not be added if there is an A or AAAA record with the same name
                                    When adding a A or AAAA record, it will not be added if there is an CNAME record with the same name
                                    A CNAME record's name may not match it's content
                                    You cannot add an NS record with the same name as any other record type
                                    You cannot add a record with the same name as any NS record
                                    CloudFlare will not begin serving DNS for a zone until the zone's nameservers are switched to CloudFlare nameservers at the zone's registrar
                                    DNS will continue to be served by CloudFlare for 20 days after a zone's nameservers are switched away from CloudFlare namservers
                                    When using unicode characters in domain names, they will be translated to punycode and as such, the length may end up being larger than what is passed into the API

                                    Railgun connections for a Zone

                                    Railguns associated with a zone

                                    Object definition

                                    View properties and constraints defined on the object

                                    Show definition

                                    GET Get available Railguns permission needed: #zone_settings:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    A list of available Railguns the zone can use

                                    GET /zones/:zone_identifier/railguns
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/railguns" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": [
                                        {
                                          "id": "e928d310693a83094309acf9ead50448",
                                          "name": "My Railgun",
                                          "enabled": true,
                                          "connected": true
                                        }
                                      ],
                                      "result_info": {
                                        "page": 1,
                                        "per_page": 20,
                                        "count": 1,
                                        "total_count": 2000
                                      }
                                    }

                                    GET Get Railgun details permission needed: #zone_settings:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Details about a specific Railgun

                                    GET /zones/:zone_identifier/railguns/:identifier
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/railguns/e928d310693a83094309acf9ead50448" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "e928d310693a83094309acf9ead50448",
                                        "name": "My Railgun",
                                        "enabled": true,
                                        "connected": true
                                      }
                                    }

                                    GET Test Railgun connection permission needed: #zone_settings:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Test Railgun connection to the Zone

                                    GET /zones/:zone_identifier/railguns/:identifier/diagnose
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/railguns/e928d310693a83094309acf9ead50448/diagnose" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "method": "GET",
                                        "host_name": "www.example.com",
                                        "http_status": 200,
                                        "railgun": "on",
                                        "url": "https://www.cloudflare.com",
                                        "response_status": "200 OK",
                                        "protocol": "HTTP/1.1",
                                        "elapsed_time": "0.239013s",
                                        "body_size": "63910 bytes",
                                        "body_hash": "be27f2429421e12f200cab1da43ba301bdc70e1d",
                                        "missing_headers": "No Content-Length or Transfer-Encoding",
                                        "connection_close": false,
                                        "cloudflare": "on",
                                        "cf-ray": "1ddd7570575207d9-LAX",
                                        "cf-wan-error": null,
                                        "cf-cache-status": null
                                      }
                                    }

                                    PATCH Connect or disconnect a Railgun permission needed: #zone_settings:edit
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Connect or disconnect a Railgun

                                    PATCH /zones/:zone_identifier/railguns/:identifier

                                    Required parameters

                                    Name /typeDescription /exampleConstraints
                                    connected
                                    boolean

                                    A flag indicating whether the given zone is connected to the Railgun

                                    true
                                    • valid values: (true,false)
                                    cURL (example)
                                    curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/railguns/e928d310693a83094309acf9ead50448" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json" \
                                         --data '{"connected":true}'
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "e928d310693a83094309acf9ead50448",
                                        "name": "My Railgun",
                                        "enabled": true,
                                        "connected": true
                                      }
                                    }

                                    Zone Analytics

                                    Analytics data for a zone

                                    Object definitions

                                    View properties and constraints defined on the object

                                    Show definitions

                                    GET Dashboard permission needed: #analytics:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    The dashboard view provides both totals and timeseries data for the given zone and time period across the entire CloudFlare network.

                                    GET /zones/:zone_identifier/analytics/dashboard

                                    Optional parameters

                                    Name /typeDescription /exampleConstraints
                                    since
                                    stringinteger

                                    The (inclusive) beginning of the requested time frame. This value can be a negative integer representing the number of minutes in the past relative to time the request is made, or can be an absolute timestamp that conforms to RFC 3339. At this point in time, it cannot exceed a time in the past greater than one year.

                                    Ranges that the CloudFlare web application provides will provide the following period length for each point:

                                    • Last 30 minutes (-30): 1 minute
                                    • Last 6 hours (-360): 15 minutes
                                    • Last 12 hours (-720): 30 minutes
                                    • Last 24 hours (-1440): 1 hour
                                    • Last week (-10080): 1 day
                                    • Last month (-43200): 1 day
                                    "2015-01-01T12:23:00Z"
                                    • default value: -10080
                                    until
                                    stringinteger

                                    The (exclusive) end of the requested time frame. This value can be a negative integer representing the number of minutes in the past relative to time the request is made, or can be an absolute timestamp that conforms to RFC 3339. If omitted, the time of the request is used.

                                    "2015-01-02T12:23:00Z"
                                    • default value: 0
                                    continuous
                                    boolean

                                    When set to true, and when since is a relative timestamp (i.e. a negative number, representing the number of seconds to look back), the API will move the requested time window backward, up to a bounded number of seconds, until it finds a complete, continuous region of data. This flag thus should only be true when trying to get the most recently arrived, but also completely aggregated, data. <br/><br/> The API will also return data when continuous is true and when until is set, or when both since and until are absolute timestamps. However, due to the underlying behaviour of continuous=true, which regresses the time window if data is not available, the users must beware that with these parameters, the API response may not represent the requested time window. We thus advise against using both continuous=true and absolute timestamps.

                                    true
                                    • default value:
                                    • valid values: (true,false)
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/analytics/dashboard?since=2015-01-01T12:23:00Z&until=2015-01-02T12:23:00Z&continuous=true" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "totals": {
                                          "since": "2015-01-01T12:23:00Z",
                                          "until": "2015-01-02T12:23:00Z",
                                          "requests": {
                                            "all": 1234085328,
                                            "cached": 1234085328,
                                            "uncached": 13876154,
                                            "content_type": {
                                              "css": 15343,
                                              "html": 1234213,
                                              "javascript": 318236,
                                              "gif": 23178,
                                              "jpeg": 1982048
                                            },
                                            "country": {
                                              "US": 4181364,
                                              "AG": 37298,
                                              "GI": 293846
                                            },
                                            "ssl": {
                                              "encrypted": 12978361,
                                              "unencrypted": 781263
                                            },
                                            "http_status": {
                                              "200": 13496983,
                                              "301": 283,
                                              "400": 187936,
                                              "402": 1828,
                                              "404": 1293
                                            }
                                          },
                                          "bandwidth": {
                                            "all": 213867451,
                                            "cached": 113205063,
                                            "uncached": 113205063,
                                            "content_type": {
                                              "css": 237421,
                                              "html": 1231290,
                                              "javascript": 123245,
                                              "gif": 1234242,
                                              "jpeg": 784278
                                            },
                                            "country": {
                                              "US": 123145433,
                                              "AG": 2342483,
                                              "GI": 984753
                                            },
                                            "ssl": {
                                              "encrypted": 37592942,
                                              "unencrypted": 237654192
                                            }
                                          },
                                          "threats": {
                                            "all": 23423873,
                                            "country": {
                                              "US": 123,
                                              "CN": 523423,
                                              "AU": 91
                                            },
                                            "type": {
                                              "user.ban.ip": 123,
                                              "hot.ban.unknown": 5324,
                                              "macro.chl.captchaErr": 1341,
                                              "macro.chl.jschlErr": 5323
                                            }
                                          },
                                          "pageviews": {
                                            "all": 5724723,
                                            "search_engines": {
                                              "googlebot": 35272,
                                              "pingdom": 13435,
                                              "bingbot": 5372,
                                              "baidubot": 1345
                                            }
                                          },
                                          "uniques": {
                                            "all": 12343
                                          }
                                        },
                                        "timeseries": [
                                          {
                                            "since": "2015-01-01T12:23:00Z",
                                            "until": "2015-01-02T12:23:00Z",
                                            "requests": {
                                              "all": 1234085328,
                                              "cached": 1234085328,
                                              "uncached": 13876154,
                                              "content_type": {
                                                "css": 15343,
                                                "html": 1234213,
                                                "javascript": 318236,
                                                "gif": 23178,
                                                "jpeg": 1982048
                                              },
                                              "country": {
                                                "US": 4181364,
                                                "AG": 37298,
                                                "GI": 293846
                                              },
                                              "ssl": {
                                                "encrypted": 12978361,
                                                "unencrypted": 781263
                                              },
                                              "http_status": {
                                                "200": 13496983,
                                                "301": 283,
                                                "400": 187936,
                                                "402": 1828,
                                                "404": 1293
                                              }
                                            },
                                            "bandwidth": {
                                              "all": 213867451,
                                              "cached": 113205063,
                                              "uncached": 113205063,
                                              "content_type": {
                                                "css": 237421,
                                                "html": 1231290,
                                                "javascript": 123245,
                                                "gif": 1234242,
                                                "jpeg": 784278
                                              },
                                              "country": {
                                                "US": 123145433,
                                                "AG": 2342483,
                                                "GI": 984753
                                              },
                                              "ssl": {
                                                "encrypted": 37592942,
                                                "unencrypted": 237654192
                                              }
                                            },
                                            "threats": {
                                              "all": 23423873,
                                              "country": {
                                                "US": 123,
                                                "CN": 523423,
                                                "AU": 91
                                              },
                                              "type": {
                                                "user.ban.ip": 123,
                                                "hot.ban.unknown": 5324,
                                                "macro.chl.captchaErr": 1341,
                                                "macro.chl.jschlErr": 5323
                                              }
                                            },
                                            "pageviews": {
                                              "all": 5724723,
                                              "search_engines": {
                                                "googlebot": 35272,
                                                "pingdom": 13435,
                                                "bingbot": 5372,
                                                "baidubot": 1345
                                              }
                                            },
                                            "uniques": {
                                              "all": 12343
                                            }
                                          }
                                        ]
                                      },
                                      "query": {
                                        "since": "2015-01-01T12:23:00Z",
                                        "until": "2015-01-02T12:23:00Z",
                                        "time_delta": 60
                                      }
                                    }

                                    GET Analytics by Co-locations permission needed: #analytics:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    This view provides a breakdown of analytics data by datacenter. Note: This is available to Enterprise customers only.

                                    GET /zones/:zone_identifier/analytics/colos

                                    Optional parameters

                                    Name /typeDescription /exampleConstraints
                                    since
                                    stringinteger

                                    The (inclusive) beginning of the requested time frame. This value can be a negative integer representing the number of minutes in the past relative to time the request is made, or can be an absolute timestamp that conforms to RFC 3339. At this point in time, it cannot exceed a time in the past greater than one year.

                                    Ranges that the CloudFlare web application provides will provide the following period length for each point:

                                    • Last 30 minutes (-30): 1 minute
                                    • Last 6 hours (-360): 15 minutes
                                    • Last 12 hours (-720): 30 minutes
                                    • Last 24 hours (-1440): 1 hour
                                    • Last week (-10080): 1 day
                                    • Last month (-43200): 1 day
                                    "2015-01-01T12:23:00Z"
                                    • default value: -10080
                                    until
                                    stringinteger

                                    The (exclusive) end of the requested time frame. This value can be a negative integer representing the number of minutes in the past relative to time the request is made, or can be an absolute timestamp that conforms to RFC 3339. If omitted, the time of the request is used.

                                    "2015-01-02T12:23:00Z"
                                    • default value: 0
                                    continuous
                                    boolean

                                    When set to true, and when since is a relative timestamp (i.e. a negative number, representing the number of seconds to look back), the API will move the requested time window backward, up to a bounded number of seconds, until it finds a complete, continuous region of data. This flag thus should only be true when trying to get the most recently arrived, but also completely aggregated, data. <br/><br/> The API will also return data when continuous is true and when until is set, or when both since and until are absolute timestamps. However, due to the underlying behaviour of continuous=true, which regresses the time window if data is not available, the users must beware that with these parameters, the API response may not represent the requested time window. We thus advise against using both continuous=true and absolute timestamps.

                                    true
                                    • default value:
                                    • valid values: (true,false)
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/analytics/colos?since=2015-01-01T12:23:00Z&until=2015-01-02T12:23:00Z&continuous=true" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": [
                                        {
                                          "colo_id": "SFO",
                                          "timeseries": [
                                            {
                                              "since": "2015-01-01T12:23:00Z",
                                              "until": "2015-01-02T12:23:00Z",
                                              "requests": {
                                                "all": 1234085328,
                                                "cached": 1234085328,
                                                "uncached": 13876154,
                                                "content_type": {
                                                  "css": 15343,
                                                  "html": 1234213,
                                                  "javascript": 318236,
                                                  "gif": 23178,
                                                  "jpeg": 1982048
                                                },
                                                "country": {
                                                  "US": 4181364,
                                                  "AG": 37298,
                                                  "GI": 293846
                                                },
                                                "ssl": {
                                                  "encrypted": 12978361,
                                                  "unencrypted": 781263
                                                },
                                                "http_status": {
                                                  "200": 13496983,
                                                  "301": 283,
                                                  "400": 187936,
                                                  "402": 1828,
                                                  "404": 1293
                                                }
                                              },
                                              "bandwidth": {
                                                "all": 213867451,
                                                "cached": 113205063,
                                                "uncached": 113205063,
                                                "content_type": {
                                                  "css": 237421,
                                                  "html": 1231290,
                                                  "javascript": 123245,
                                                  "gif": 1234242,
                                                  "jpeg": 784278
                                                },
                                                "country": {
                                                  "US": 123145433,
                                                  "AG": 2342483,
                                                  "GI": 984753
                                                },
                                                "ssl": {
                                                  "encrypted": 37592942,
                                                  "unencrypted": 237654192
                                                }
                                              },
                                              "threats": {
                                                "all": 23423873,
                                                "country": {
                                                  "US": 123,
                                                  "CN": 523423,
                                                  "AU": 91
                                                },
                                                "type": {
                                                  "user.ban.ip": 123,
                                                  "hot.ban.unknown": 5324,
                                                  "macro.chl.captchaErr": 1341,
                                                  "macro.chl.jschlErr": 5323
                                                }
                                              },
                                              "pageviews": {
                                                "all": 5724723,
                                                "search_engines": {
                                                  "googlebot": 35272,
                                                  "pingdom": 13435,
                                                  "bingbot": 5372,
                                                  "baidubot": 1345
                                                }
                                              },
                                              "uniques": {
                                                "all": 12343
                                              }
                                            }
                                          ]
                                        }
                                      ],
                                      "query": {
                                        "since": "2015-01-01T12:23:00Z",
                                        "until": "2015-01-02T12:23:00Z",
                                        "time_delta": 60
                                      }
                                    }

                                    Railgun

                                    CloudFlare Railgun

                                    Object definition

                                    View properties and constraints defined on the object

                                    Show definition

                                    POST Create Railgun
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    POST /railguns

                                    Required parameters

                                    Name /typeDescription /exampleConstraints
                                    name
                                    string

                                    Readable identifier of the railgun

                                    "My Railgun"
                                    • max length: 160
                                    cURL (example)
                                    curl -X POST "https://api.cloudflare.com/client/v4/railguns" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json" \
                                         --data '{"name":"My Railgun"}'
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "e928d310693a83094309acf9ead50448",
                                        "name": "My Railgun",
                                        "status": "active",
                                        "enabled": true,
                                        "zones_connected": 2,
                                        "build": "b1234",
                                        "version": "2.1",
                                        "revision": "123",
                                        "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                        "activated_on": "2014-01-02T02:20:00Z",
                                        "created_on": "2014-01-01T05:20:00Z",
                                        "modified_on": "2014-01-01T05:20:00Z"
                                      }
                                    }

                                    GET List Railguns
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    List, search, sort and filter your Railguns

                                    GET /railguns

                                    Optional parameters

                                    Name /typeDescription /exampleConstraints
                                    page
                                    number

                                    Page number of paginated results

                                    1
                                    • default value: 1
                                    • min value: 1
                                    per_page
                                    number

                                    Number of items per page

                                    20
                                    • default value: 20
                                    • min value: 5
                                    • max value: 50
                                    direction
                                    string

                                    Direction to order Railguns

                                    "desc"
                                    • valid values: asc, desc
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/railguns?page=1&per_page=20&direction=desc" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": [
                                        {
                                          "id": "e928d310693a83094309acf9ead50448",
                                          "name": "My Railgun",
                                          "status": "active",
                                          "enabled": true,
                                          "zones_connected": 2,
                                          "build": "b1234",
                                          "version": "2.1",
                                          "revision": "123",
                                          "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                          "activated_on": "2014-01-02T02:20:00Z",
                                          "created_on": "2014-01-01T05:20:00Z",
                                          "modified_on": "2014-01-01T05:20:00Z"
                                        }
                                      ],
                                      "result_info": {
                                        "page": 1,
                                        "per_page": 20,
                                        "count": 1,
                                        "total_count": 2000
                                      }
                                    }

                                    GET Railgun details
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    GET /railguns/:identifier
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/railguns/e928d310693a83094309acf9ead50448" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "e928d310693a83094309acf9ead50448",
                                        "name": "My Railgun",
                                        "status": "active",
                                        "enabled": true,
                                        "zones_connected": 2,
                                        "build": "b1234",
                                        "version": "2.1",
                                        "revision": "123",
                                        "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                        "activated_on": "2014-01-02T02:20:00Z",
                                        "created_on": "2014-01-01T05:20:00Z",
                                        "modified_on": "2014-01-01T05:20:00Z"
                                      }
                                    }

                                    GET Get zones connected to a Railgun
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    The zones that are currently using this Railgun

                                    GET /railguns/:identifier/zones
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/railguns/e928d310693a83094309acf9ead50448/zones" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": [
                                        {
                                          "id": "023e105f4ecef8ad9ca31a8372d0c353",
                                          "name": "example.com",
                                          "development_mode": 7200,
                                          "original_name_servers": [
                                            "ns1.originaldnshost.com",
                                            "ns2.originaldnshost.com"
                                          ],
                                          "original_registrar": "GoDaddy",
                                          "original_dnshost": "NameCheap",
                                          "created_on": "2014-01-01T05:20:00.12345Z",
                                          "modified_on": "2014-01-01T05:20:00.12345Z"
                                        }
                                      ],
                                      "result_info": {
                                        "page": 1,
                                        "per_page": 20,
                                        "count": 1,
                                        "total_count": 2000
                                      }
                                    }

                                    PATCH Enable or disable a Railgun
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Enable or disable a Railgun for all zones connected to it

                                    PATCH /railguns/:identifier

                                    Required parameters

                                    Name /typeDescription /exampleConstraints
                                    enabled
                                    boolean

                                    Flag to determine if the Railgun is accepting connections

                                    true
                                    • valid values: (true,false)
                                    cURL (example)
                                    curl -X PATCH "https://api.cloudflare.com/client/v4/railguns/e928d310693a83094309acf9ead50448" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json" \
                                         --data '{"enabled":true}'
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "e928d310693a83094309acf9ead50448",
                                        "name": "My Railgun",
                                        "status": "active",
                                        "enabled": true,
                                        "zones_connected": 2,
                                        "build": "b1234",
                                        "version": "2.1",
                                        "revision": "123",
                                        "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                        "activated_on": "2014-01-02T02:20:00Z",
                                        "created_on": "2014-01-01T05:20:00Z",
                                        "modified_on": "2014-01-01T05:20:00Z"
                                      }
                                    }

                                    DELETE Delete Railgun
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Disable and delete a Railgun. This will immediately disable the Railgun for any connected zones

                                    DELETE /railguns/:identifier
                                    cURL (example)
                                    curl -X DELETE "https://api.cloudflare.com/client/v4/railguns/e928d310693a83094309acf9ead50448" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "e928d310693a83094309acf9ead50448"
                                      }
                                    }

                                    Custom Pages for a Zone

                                    Custom pages associated with a zone

                                    Object definitions

                                    View properties and constraints defined on the object

                                    Show definitions

                                    GET Available Custom Pages permission needed: #zone_settings:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    A list of available Custom Pages the zone can use

                                    GET /zones/:zone_identifier/custom_pages
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_pages" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": [
                                        {
                                          "id": "basic_challenge",
                                          "created_on": "2014-01-01T05:20:00.12345Z",
                                          "modified_on": "2014-01-01T05:20:00.12345Z",
                                          "url": "http://www.example.com",
                                          "state": "default",
                                          "required_tokens": [
                                            "::CAPTCHA_BOX::"
                                          ],
                                          "preview_target": "preview:target",
                                          "description": true
                                        }
                                      ],
                                      "result_info": {
                                        "page": 1,
                                        "per_page": 20,
                                        "count": 1,
                                        "total_count": 2000
                                      }
                                    }

                                    GET Custom Page details permission needed: #zone_settings:read
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Details about a specific Custom page details

                                    GET /zones/:zone_identifier/custom_pages/:identifier
                                    cURL (example)
                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_pages/basic_challenge" \
                                         -H "X-Auth-Email: user@example.com" \
                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                         -H "Content-Type: application/json"
                                    Response (example)
                                    {
                                      "success": true,
                                      "errors": [],
                                      "messages": [],
                                      "result": {
                                        "id": "basic_challenge",
                                        "created_on": "2014-01-01T05:20:00.12345Z",
                                        "modified_on": "2014-01-01T05:20:00.12345Z",
                                        "url": "http://www.example.com",
                                        "state": "default",
                                        "required_tokens": [
                                          "::CAPTCHA_BOX::"
                                        ],
                                        "preview_target": "preview:target",
                                        "description": true
                                      }
                                    }

                                    PUT Update Custom page URL permission needed: #zone_settings:edit
                                    • free
                                    • pro
                                    • business
                                    • enterprise

                                    Update Custom page URL

                                    PUT /zones/:zone_identifier/custom_pages/:identifier

                                    Required parameters

                                    Name /typeDescription /exampleConstraints
                                    url
                                    string

                                    A URL that is associated with the Custom Page.

                                    "http://www.example.com"
                                      state
                                      string

                                      The Custom Page state

                                      "default"
                                      • valid values: default, customized
                                      cURL (example)
                                      curl -X PUT "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_pages/basic_challenge" \
                                           -H "X-Auth-Email: user@example.com" \
                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                           -H "Content-Type: application/json" \
                                           --data '{"url":"http://www.example.com","state":"default"}'
                                      Response (example)
                                      {
                                        "success": true,
                                        "errors": [],
                                        "messages": [],
                                        "result": {
                                          "id": "basic_challenge",
                                          "created_on": "2014-01-01T05:20:00.12345Z",
                                          "modified_on": "2014-01-01T05:20:00.12345Z",
                                          "url": "http://www.example.com",
                                          "state": "default",
                                          "required_tokens": [
                                            "::CAPTCHA_BOX::"
                                          ],
                                          "preview_target": "preview:target",
                                          "description": true
                                        }
                                      }

                                      Custom Pages for a Zone error codes

                                      CodeDescription
                                      1210That operation is no longer allowed for that domain.
                                      1001Invalid request. Could not connect to database
                                      1211Could not find a valid customization page to disable
                                      1002Validator dispatcher expects an array
                                      1200A URL is required
                                      1212An undocumented error has occurred and has been logged.
                                      1201The URL provided seems to be irregular
                                      1213That operation has already been performed for this challenge/error.
                                      1004Cannot find a valid zone
                                      1202Unable to grab the content for the URL provided. Please try again.
                                      1214Rate limit reached for this operation. Please try again in a minute
                                      1203Your custom page must be larger than <characters> characters
                                      1215Rate limit reached for this operation. Please try again in a minute
                                      1006Cannot find a valid customization page
                                      1204Your custom page must be smaller than <characters> characters
                                      1007Invalid validation method being called
                                      1205A <token> token was not detected on the error page, and must be added before this page can be integrated into CloudFlare. The default error page will show until this is corrected and rescanned.
                                      1217Invalid state passed
                                      1206Could not find a valid zone
                                      1218Missing Custom Page state
                                      1207That customization page is not modifiable
                                      1219Please upgrade to access this feature
                                      1208An unknown error has occurred and has been logged. We will fix this problem promptly. We apologize for the inconvenience.
                                      1209Could not find a valid customization page for this operation
                                      1220We were unable to scan the page provided. Please ensure it is accessible publicly and is larger than 100 characters
                                      1000Invalid user

                                      Custom SSL for a Zone

                                      Custom SSL certificate for a zone

                                      Object definition

                                      View properties and constraints defined on the object

                                      Show definition

                                      POST Create SSL configuration permission needed: #ssl:edit
                                      • free
                                      • pro
                                      • business
                                      • enterprise

                                      Upload a new SSL certificate for a zone

                                      POST /zones/:zone_identifier/custom_certificates

                                      Required parameters

                                      Name /typeDescription /exampleConstraints
                                      certificate
                                      string

                                      The zone's SSL certificate or certificate and the intermediate(s)

                                      "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n"
                                        private_key
                                        string

                                        The zone's private key

                                        "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n"

                                          Optional parameters

                                          Name /typeDescription /exampleConstraints
                                          bundle_method
                                          string

                                          A ubiquitous bundle is a bundle that has a higher probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle is a bundle with the shortest chain and newest intermediates. A forced method attempt to use the certificate/chain as defined by the input

                                          "ubiquitous"
                                          • default value: ubiquitous
                                          • valid values: ubiquitous, optimal, force
                                          cURL (example)
                                          curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_certificates" \
                                               -H "X-Auth-Email: user@example.com" \
                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                               -H "Content-Type: application/json" \
                                               --data '{"certificate":"-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n","private_key":"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n","bundle_method":"ubiquitous"}'
                                          Response (example)
                                          {
                                            "success": true,
                                            "errors": [],
                                            "messages": [],
                                            "result": {
                                              "id": "7e7b8deba8538af625850b7b2530034c",
                                              "hosts": [
                                                "example.com"
                                              ],
                                              "issuer": "GlobalSign",
                                              "signature": "SHA256WithRSA",
                                              "status": "active",
                                              "bundle_method": "ubiquitous",
                                              "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                              "uploaded_on": "2014-01-01T05:20:00Z",
                                              "modified_on": "2014-01-01T05:20:00Z",
                                              "expires_on": "2016-01-01T05:20:00Z",
                                              "priority": 1
                                            }
                                          }

                                          GET List SSL configurations permission needed: #ssl:read
                                          • free
                                          • pro
                                          • business
                                          • enterprise

                                          List, search, sort, and filter all of your custom SSL certificates

                                          GET /zones/:zone_identifier/custom_certificates

                                          Optional parameters

                                          Name /typeDescription /exampleConstraints
                                          status
                                          string

                                          Status of the zone's custom SSL

                                          "active"
                                          • valid values: active, expired, deleted
                                          • read only
                                          page
                                          number

                                          Page number of paginated results

                                          1
                                          • default value: 1
                                          • min value: 1
                                          per_page
                                          number

                                          Number of zones per page

                                          20
                                          • default value: 20
                                          • min value: 5
                                          • max value: 50
                                          order
                                          string

                                          Field to order certificates by

                                          "status"
                                          • default value: priority
                                          • valid values: status, issuer, priority, expires_on
                                          direction
                                          string

                                          Direction to order zones

                                          "desc"
                                          • valid values: asc, desc
                                          match
                                          string

                                          Whether to match all search requirements or at least one (any)

                                          "all"
                                          • default value: all
                                          • valid values: any, all
                                          cURL (example)
                                          curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_certificates?status=active&page=1&per_page=20&order=status&direction=desc&match=all" \
                                               -H "X-Auth-Email: user@example.com" \
                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                               -H "Content-Type: application/json"
                                          Response (example)
                                          {
                                            "success": true,
                                            "errors": [],
                                            "messages": [],
                                            "result": [
                                              {
                                                "id": "7e7b8deba8538af625850b7b2530034c",
                                                "hosts": [
                                                  "example.com"
                                                ],
                                                "issuer": "GlobalSign",
                                                "signature": "SHA256WithRSA",
                                                "status": "active",
                                                "bundle_method": "ubiquitous",
                                                "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                "uploaded_on": "2014-01-01T05:20:00Z",
                                                "modified_on": "2014-01-01T05:20:00Z",
                                                "expires_on": "2016-01-01T05:20:00Z",
                                                "priority": 1
                                              }
                                            ],
                                            "result_info": {
                                              "page": 1,
                                              "per_page": 20,
                                              "count": 1,
                                              "total_count": 2000
                                            }
                                          }

                                          GET SSL configuration details permission needed: #ssl:read
                                          • free
                                          • pro
                                          • business
                                          • enterprise

                                          GET /zones/:zone_identifier/custom_certificates/:identifier
                                          cURL (example)
                                          curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_certificates/7e7b8deba8538af625850b7b2530034c" \
                                               -H "X-Auth-Email: user@example.com" \
                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                               -H "Content-Type: application/json"
                                          Response (example)
                                          {
                                            "success": true,
                                            "errors": [],
                                            "messages": [],
                                            "result": {
                                              "id": "7e7b8deba8538af625850b7b2530034c",
                                              "hosts": [
                                                "example.com"
                                              ],
                                              "issuer": "GlobalSign",
                                              "signature": "SHA256WithRSA",
                                              "status": "active",
                                              "bundle_method": "ubiquitous",
                                              "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                              "uploaded_on": "2014-01-01T05:20:00Z",
                                              "modified_on": "2014-01-01T05:20:00Z",
                                              "expires_on": "2016-01-01T05:20:00Z",
                                              "priority": 1
                                            }
                                          }

                                          PATCH Update SSL configuration permission needed: #ssl:edit
                                          • free
                                          • pro
                                          • business
                                          • enterprise

                                          Upload a new private key and/or PEM/CRT for the SSL certificate

                                          PATCH /zones/:zone_identifier/custom_certificates/:identifier

                                          Optional parameters

                                          Name /typeDescription /exampleConstraints
                                          private_key
                                          string

                                          The zone's private key

                                          "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n"
                                            certificate
                                            string

                                            The zone's SSL certificate or certificate and the intermediate(s)

                                            "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n"
                                              bundle_method
                                              string

                                              A ubiquitous bundle is a bundle that has a higher probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle is a bundle with the shortest chain and newest intermediates. A forced method attempt to use the certificate/chain as defined by the input

                                              "ubiquitous"
                                              • default value: ubiquitous
                                              • valid values: ubiquitous, optimal, force
                                              cURL (example)
                                              curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_certificates/7e7b8deba8538af625850b7b2530034c" \
                                                   -H "X-Auth-Email: user@example.com" \
                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                   -H "Content-Type: application/json" \
                                                   --data '{"private_key":"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n","certificate":"-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n","bundle_method":"ubiquitous"}'
                                              Response (example)
                                              {
                                                "success": true,
                                                "errors": [],
                                                "messages": [],
                                                "result": {
                                                  "id": "7e7b8deba8538af625850b7b2530034c",
                                                  "hosts": [
                                                    "example.com"
                                                  ],
                                                  "issuer": "GlobalSign",
                                                  "signature": "SHA256WithRSA",
                                                  "status": "active",
                                                  "bundle_method": "ubiquitous",
                                                  "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                  "uploaded_on": "2014-01-01T05:20:00Z",
                                                  "modified_on": "2014-01-01T05:20:00Z",
                                                  "expires_on": "2016-01-01T05:20:00Z",
                                                  "priority": 1
                                                }
                                              }

                                              PUT Re-prioritize SSL certificates permission needed: #ssl:edit
                                              • free
                                              • pro
                                              • business
                                              • enterprise

                                              If a zone has multiple SSL certificates, you can set the order in which they should be used during a request.

                                              PUT /zones/:zone_identifier/custom_certificates/prioritize

                                              Optional parameters

                                              Name /typeDescription /exampleConstraints
                                              certificates
                                              array

                                              Array of ordered certificates.

                                              [ { "ID": "5a7805061c76ada191ed06f989cc3dac", "priority": 2 }, { "ID": "9a7806061c88ada191ed06f989cc3dac", "priority": 1 } ]
                                                cURL (example)
                                                curl -X PUT "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_certificates/prioritize" \
                                                     -H "X-Auth-Email: user@example.com" \
                                                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                     -H "Content-Type: application/json" \
                                                     --data '{"certificates":[{"ID":"5a7805061c76ada191ed06f989cc3dac","priority":2},{"ID":"9a7806061c88ada191ed06f989cc3dac","priority":1}]}'
                                                Response (example)
                                                {
                                                  "success": true,
                                                  "errors": [],
                                                  "messages": [],
                                                  "result": [
                                                    {
                                                      "id": "7e7b8deba8538af625850b7b2530034c",
                                                      "hosts": [
                                                        "example.com"
                                                      ],
                                                      "issuer": "GlobalSign",
                                                      "signature": "SHA256WithRSA",
                                                      "status": "active",
                                                      "bundle_method": "ubiquitous",
                                                      "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                      "uploaded_on": "2014-01-01T05:20:00Z",
                                                      "modified_on": "2014-01-01T05:20:00Z",
                                                      "expires_on": "2016-01-01T05:20:00Z",
                                                      "priority": 1
                                                    }
                                                  ],
                                                  "result_info": {
                                                    "page": 1,
                                                    "per_page": 20,
                                                    "count": 1,
                                                    "total_count": 2000
                                                  }
                                                }

                                                DELETE Delete an SSL certificate permission needed: #ssl:edit
                                                • free
                                                • pro
                                                • business
                                                • enterprise

                                                DELETE /zones/:zone_identifier/custom_certificates/:identifier
                                                cURL (example)
                                                curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/custom_certificates/7e7b8deba8538af625850b7b2530034c" \
                                                     -H "X-Auth-Email: user@example.com" \
                                                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                     -H "Content-Type: application/json"
                                                Response (example)
                                                {
                                                  "id": "7e7b8deba8538af625850b7b2530034c"
                                                }

                                                Keyless SSL for a Zone

                                                A Keyless certificate is an SSL certificate where the SSL private key is not stored on CloudFlare

                                                Object definition

                                                View properties and constraints defined on the object

                                                Show definition

                                                POST Create a Keyless SSL configuration permission needed: #ssl:edit
                                                • free
                                                • pro
                                                • business
                                                • enterprise

                                                POST /zones/:zone_identifier/keyless_certificates

                                                Required parameters

                                                Name /typeDescription /exampleConstraints
                                                host
                                                string

                                                The keyless SSL name

                                                "example.com"
                                                • max length: 253
                                                • pattern: hostname_or_ip
                                                port
                                                number

                                                The keyless SSL port used to commmunicate between CloudFlare and the client's Keyless SSL server

                                                24008
                                                • default value: 24008
                                                • max length: 65535
                                                certificate
                                                string

                                                The zone's SSL certificate or SSL certificate and intermediate(s)

                                                "-----BEGIN CERTIFICATE----- MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50 ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8 5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+ sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4 UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8 uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8 /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw= -----END CERTIFICATE-----"

                                                  Optional parameters

                                                  Name /typeDescription /exampleConstraints
                                                  name
                                                  string

                                                  The keyless SSL name

                                                  "example.com Keyless SSL"
                                                  • max length: 180
                                                  • read only
                                                  bundle_method
                                                  string

                                                  A ubiquitous bundle is a bundle that has a higher probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle is a bundle with the shortest chain and newest intermediates. A forced method attempt to use the certificate/chain as defined by the input

                                                  "ubiquitous"
                                                  • default value: ubiquitous
                                                  • valid values: ubiquitous, optimal, force
                                                  cURL (example)
                                                  curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/keyless_certificates" \
                                                       -H "X-Auth-Email: user@example.com" \
                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                       -H "Content-Type: application/json" \
                                                       --data '{"host":"example.com","port":24008,"name":"example.com Keyless SSL","certificate":"-----BEGIN CERTIFICATE----- MIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV BAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX aWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF MQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50 ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB CgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ LIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N nTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO fSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8 5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ qI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+ sWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV RKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4 UEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt vTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8 uXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs ESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8 /cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw= -----END CERTIFICATE-----","bundle_method":"ubiquitous"}'
                                                  Response (example)
                                                  {
                                                    "success": true,
                                                    "errors": [],
                                                    "messages": [],
                                                    "result": {
                                                      "id": "4d2844d2ce78891c34d0b6c0535a291e",
                                                      "name": "example.com Keyless SSL",
                                                      "host": "example.com",
                                                      "port": 24008,
                                                      "status": "active",
                                                      "enabled": false,
                                                      "permissions": [
                                                        "#ssl:read",
                                                        "#ssl:edit"
                                                      ],
                                                      "created_on": "2014-01-01T05:20:00Z",
                                                      "modified_on": "2014-01-01T05:20:00Z"
                                                    }
                                                  }

                                                  GET List Keyless SSL Configurations permission needed: #ssl:read
                                                  • free
                                                  • pro
                                                  • business
                                                  • enterprise

                                                  List all Keyless SSL configurations for a given zone

                                                  GET /zones/:zone_identifier/keyless_certificates
                                                  cURL (example)
                                                  curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/keyless_certificates" \
                                                       -H "X-Auth-Email: user@example.com" \
                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                       -H "Content-Type: application/json"
                                                  Response (example)
                                                  {
                                                    "success": true,
                                                    "errors": [],
                                                    "messages": [],
                                                    "result": [
                                                      {
                                                        "id": "4d2844d2ce78891c34d0b6c0535a291e",
                                                        "name": "example.com Keyless SSL",
                                                        "host": "example.com",
                                                        "port": 24008,
                                                        "status": "active",
                                                        "enabled": false,
                                                        "permissions": [
                                                          "#ssl:read",
                                                          "#ssl:edit"
                                                        ],
                                                        "created_on": "2014-01-01T05:20:00Z",
                                                        "modified_on": "2014-01-01T05:20:00Z"
                                                      }
                                                    ],
                                                    "result_info": {
                                                      "page": 1,
                                                      "per_page": 20,
                                                      "count": 1,
                                                      "total_count": 2000
                                                    }
                                                  }

                                                  GET Keyless SSL details permission needed: #ssl:read
                                                  • free
                                                  • pro
                                                  • business
                                                  • enterprise

                                                  Details for one Keyless SSL configuration

                                                  GET /zones/:zone_identifier/keyless_certificates/:identifier
                                                  cURL (example)
                                                  curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/keyless_certificates/4d2844d2ce78891c34d0b6c0535a291e" \
                                                       -H "X-Auth-Email: user@example.com" \
                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                       -H "Content-Type: application/json"
                                                  Response (example)
                                                  {
                                                    "success": true,
                                                    "errors": [],
                                                    "messages": [],
                                                    "result": {
                                                      "id": "4d2844d2ce78891c34d0b6c0535a291e",
                                                      "name": "example.com Keyless SSL",
                                                      "host": "example.com",
                                                      "port": 24008,
                                                      "status": "active",
                                                      "enabled": false,
                                                      "permissions": [
                                                        "#ssl:read",
                                                        "#ssl:edit"
                                                      ],
                                                      "created_on": "2014-01-01T05:20:00Z",
                                                      "modified_on": "2014-01-01T05:20:00Z"
                                                    }
                                                  }

                                                  PATCH Update Keyless configuration permission needed: #ssl:edit
                                                  • free
                                                  • pro
                                                  • business
                                                  • enterprise

                                                  This will update attributes of a Keyless SSL. Consists of one or more of the following: host,name,port,certificate,enabled

                                                  PATCH /zones/:zone_identifier/keyless_certificates/:identifier

                                                  Optional parameters

                                                  Name /typeDescription /exampleConstraints
                                                  host
                                                  string

                                                  The keyless SSL name

                                                  "example.com"
                                                  • max length: 253
                                                  • pattern: hostname_or_ip
                                                  name
                                                  string

                                                  The keyless SSL name

                                                  "example.com Keyless SSL"
                                                  • max length: 180
                                                  • read only
                                                  port
                                                  number

                                                  The keyless SSL port used to commmunicate between CloudFlare and the client's Keyless SSL server

                                                  24008
                                                  • default value: 24008
                                                  • max length: 65535
                                                  enabled
                                                  boolean

                                                  Whether or not the Keyless SSL is on or off

                                                  false
                                                  • valid values: (true,false)
                                                  • read only
                                                  cURL (example)
                                                  curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/keyless_certificates/4d2844d2ce78891c34d0b6c0535a291e" \
                                                       -H "X-Auth-Email: user@example.com" \
                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                       -H "Content-Type: application/json" \
                                                       --data '{"host":"example.com","name":"example.com Keyless SSL","port":24008,"enabled":false}'
                                                  Response (example)
                                                  {
                                                    "success": true,
                                                    "errors": [],
                                                    "messages": [],
                                                    "result": {
                                                      "id": "4d2844d2ce78891c34d0b6c0535a291e",
                                                      "name": "example.com Keyless SSL",
                                                      "host": "example.com",
                                                      "port": 24008,
                                                      "status": "active",
                                                      "enabled": false,
                                                      "permissions": [
                                                        "#ssl:read",
                                                        "#ssl:edit"
                                                      ],
                                                      "created_on": "2014-01-01T05:20:00Z",
                                                      "modified_on": "2014-01-01T05:20:00Z"
                                                    }
                                                  }

                                                  DELETE Delete Keyless configuration permission needed: #ssl:edit
                                                  • free
                                                  • pro
                                                  • business
                                                  • enterprise

                                                  DELETE /zones/:zone_identifier/keyless_certificates/:identifier
                                                  cURL (example)
                                                  curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/keyless_certificates/4d2844d2ce78891c34d0b6c0535a291e" \
                                                       -H "X-Auth-Email: user@example.com" \
                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                       -H "Content-Type: application/json"
                                                  Response (example)
                                                  {
                                                    "success": true,
                                                    "errors": [],
                                                    "messages": [],
                                                    "result": {
                                                      "id": "4d2844d2ce78891c34d0b6c0535a291e"
                                                    }
                                                  }

                                                  Page rules for a Zone

                                                  A rule describing target patterns for requests and actions to perform on matching requests

                                                  Object definition

                                                  View properties and constraints defined on the object

                                                  Show definition

                                                  POST Create a page rule Betapermission needed: #zone:edit
                                                  • free
                                                  • pro
                                                  • business
                                                  • enterprise

                                                  POST /zones/:zone_identifier/pagerules

                                                  Required parameters

                                                  Name /typeDescription /exampleConstraints
                                                  targets
                                                  array

                                                  Targets to evaluate on a request

                                                  [ { "target": "url", "constraint": { "operator": "matches", "value": "*example.com/images/*" } } ]
                                                    actions
                                                    array

                                                    The set of actions to perform if the targets of this rule match the request. Actions can redirect the url to another url or override settings (but not both)

                                                    [ { "id": "always_online", "value": "on" } ]

                                                      Optional parameters

                                                      Name /typeDescription /exampleConstraints
                                                      priority
                                                      integer

                                                      A number that indicates the preference for a page rule over another. In the case where you may have a catch-all page rule (e.g., #1: '/images/') but want a rule that is more specific to take precedence (e.g., #2: '/images/special/'), you'll want to specify a higher priority on the latter (#2) so it will override the first.

                                                      1
                                                      • default value: 1
                                                      status
                                                      string

                                                      Status of the page rule

                                                      "active"
                                                      • default value: disabled
                                                      • valid values: active, disabled
                                                      cURL (example)
                                                      curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/pagerules" \
                                                           -H "X-Auth-Email: user@example.com" \
                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                           -H "Content-Type: application/json" \
                                                           --data '{"targets":[{"target":"url","constraint":{"operator":"matches","value":"*example.com/images/*"}}],"actions":[{"id":"always_online","value":"on"}],"priority":1,"status":"active"}'
                                                      Response (example)
                                                      {
                                                        "success": true,
                                                        "errors": [],
                                                        "messages": [],
                                                        "result": {
                                                          "id": "9a7806061c88ada191ed06f989cc3dac",
                                                          "targets": [
                                                            {
                                                              "target": "url",
                                                              "constraint": {
                                                                "operator": "matches",
                                                                "value": "*example.com/images/*"
                                                              }
                                                            }
                                                          ],
                                                          "actions": [
                                                            {
                                                              "id": "always_online",
                                                              "value": "on"
                                                            }
                                                          ],
                                                          "priority": 1,
                                                          "status": "active",
                                                          "modified_on": "2014-01-01T05:20:00.12345Z",
                                                          "created_on": "2014-01-01T05:20:00.12345Z"
                                                        }
                                                      }

                                                      GET List page rules Betapermission needed: #zone:read
                                                      • free
                                                      • pro
                                                      • business
                                                      • enterprise

                                                      GET /zones/:zone_identifier/pagerules

                                                      Optional parameters

                                                      Name /typeDescription /exampleConstraints
                                                      status
                                                      string

                                                      Status of the page rule

                                                      "active"
                                                      • default value: disabled
                                                      • valid values: active, disabled
                                                      order
                                                      string

                                                      Field to order page rules by

                                                      "status"
                                                      • default value: priority
                                                      • valid values: status, priority
                                                      direction
                                                      string

                                                      Direction to order page rules

                                                      "desc"
                                                      • default value: desc
                                                      • valid values: asc, desc
                                                      match
                                                      string

                                                      Whether to match all search requirements or at least one (any)

                                                      "all"
                                                      • default value: all
                                                      • valid values: any, all
                                                      cURL (example)
                                                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/pagerules?status=active&order=status&direction=desc&match=all" \
                                                           -H "X-Auth-Email: user@example.com" \
                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                           -H "Content-Type: application/json"
                                                      Response (example)
                                                      {
                                                        "success": true,
                                                        "errors": [],
                                                        "messages": [],
                                                        "result": [
                                                          {
                                                            "id": "9a7806061c88ada191ed06f989cc3dac",
                                                            "targets": [
                                                              {
                                                                "target": "url",
                                                                "constraint": {
                                                                  "operator": "matches",
                                                                  "value": "*example.com/images/*"
                                                                }
                                                              }
                                                            ],
                                                            "actions": [
                                                              {
                                                                "id": "always_online",
                                                                "value": "on"
                                                              }
                                                            ],
                                                            "priority": 1,
                                                            "status": "active",
                                                            "modified_on": "2014-01-01T05:20:00.12345Z",
                                                            "created_on": "2014-01-01T05:20:00.12345Z"
                                                          }
                                                        ],
                                                        "result_info": {
                                                          "page": 1,
                                                          "per_page": 20,
                                                          "count": 1,
                                                          "total_count": 2000
                                                        }
                                                      }

                                                      GET Page rule details Betapermission needed: #zone:read
                                                      • free
                                                      • pro
                                                      • business
                                                      • enterprise

                                                      GET /zones/:zone_identifier/pagerules/:identifier
                                                      cURL (example)
                                                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/pagerules/9a7806061c88ada191ed06f989cc3dac" \
                                                           -H "X-Auth-Email: user@example.com" \
                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                           -H "Content-Type: application/json"
                                                      Response (example)
                                                      {
                                                        "success": true,
                                                        "errors": [],
                                                        "messages": [],
                                                        "result": {
                                                          "id": "9a7806061c88ada191ed06f989cc3dac",
                                                          "targets": [
                                                            {
                                                              "target": "url",
                                                              "constraint": {
                                                                "operator": "matches",
                                                                "value": "*example.com/images/*"
                                                              }
                                                            }
                                                          ],
                                                          "actions": [
                                                            {
                                                              "id": "always_online",
                                                              "value": "on"
                                                            }
                                                          ],
                                                          "priority": 1,
                                                          "status": "active",
                                                          "modified_on": "2014-01-01T05:20:00.12345Z",
                                                          "created_on": "2014-01-01T05:20:00.12345Z"
                                                        }
                                                      }

                                                      PATCH Change a page rule Betapermission needed: #zone:edit
                                                      • free
                                                      • pro
                                                      • business
                                                      • enterprise

                                                      PATCH /zones/:zone_identifier/pagerules/:identifier

                                                      Optional parameters

                                                      Name /typeDescription /exampleConstraints
                                                      targets
                                                      array

                                                      Targets to evaluate on a request

                                                      [ { "target": "url", "constraint": { "operator": "matches", "value": "*example.com/images/*" } } ]
                                                        actions
                                                        array

                                                        The set of actions to perform if the targets of this rule match the request. Actions can redirect the url to another url or override settings (but not both)

                                                        [ { "id": "always_online", "value": "on" } ]
                                                          priority
                                                          integer

                                                          A number that indicates the preference for a page rule over another. In the case where you may have a catch-all page rule (e.g., #1: '/images/') but want a rule that is more specific to take precedence (e.g., #2: '/images/special/'), you'll want to specify a higher priority on the latter (#2) so it will override the first.

                                                          1
                                                          • default value: 1
                                                          status
                                                          string

                                                          Status of the page rule

                                                          "active"
                                                          • default value: disabled
                                                          • valid values: active, disabled
                                                          cURL (example)
                                                          curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/pagerules/9a7806061c88ada191ed06f989cc3dac" \
                                                               -H "X-Auth-Email: user@example.com" \
                                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                               -H "Content-Type: application/json" \
                                                               --data '{"targets":[{"target":"url","constraint":{"operator":"matches","value":"*example.com/images/*"}}],"actions":[{"id":"always_online","value":"on"}],"priority":1,"status":"active"}'
                                                          Response (example)
                                                          {
                                                            "success": true,
                                                            "errors": [],
                                                            "messages": [],
                                                            "result": {
                                                              "id": "9a7806061c88ada191ed06f989cc3dac",
                                                              "targets": [
                                                                {
                                                                  "target": "url",
                                                                  "constraint": {
                                                                    "operator": "matches",
                                                                    "value": "*example.com/images/*"
                                                                  }
                                                                }
                                                              ],
                                                              "actions": [
                                                                {
                                                                  "id": "always_online",
                                                                  "value": "on"
                                                                }
                                                              ],
                                                              "priority": 1,
                                                              "status": "active",
                                                              "modified_on": "2014-01-01T05:20:00.12345Z",
                                                              "created_on": "2014-01-01T05:20:00.12345Z"
                                                            }
                                                          }

                                                          PUT Update a page rule Betapermission needed: #zone:edit
                                                          • free
                                                          • pro
                                                          • business
                                                          • enterprise

                                                          Replace a page rule. The final rule will exactly match the data passed with this request.

                                                          PUT /zones/:zone_identifier/pagerules/:identifier

                                                          Required parameters

                                                          Name /typeDescription /exampleConstraints
                                                          targets
                                                          array

                                                          Targets to evaluate on a request

                                                          [ { "target": "url", "constraint": { "operator": "matches", "value": "*example.com/images/*" } } ]
                                                            actions
                                                            array

                                                            The set of actions to perform if the targets of this rule match the request. Actions can redirect the url to another url or override settings (but not both)

                                                            [ { "id": "always_online", "value": "on" } ]

                                                              Optional parameters

                                                              Name /typeDescription /exampleConstraints
                                                              priority
                                                              integer

                                                              A number that indicates the preference for a page rule over another. In the case where you may have a catch-all page rule (e.g., #1: '/images/') but want a rule that is more specific to take precedence (e.g., #2: '/images/special/'), you'll want to specify a higher priority on the latter (#2) so it will override the first.

                                                              1
                                                              • default value: 1
                                                              status
                                                              string

                                                              Status of the page rule

                                                              "active"
                                                              • default value: disabled
                                                              • valid values: active, disabled
                                                              cURL (example)
                                                              curl -X PUT "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/pagerules/9a7806061c88ada191ed06f989cc3dac" \
                                                                   -H "X-Auth-Email: user@example.com" \
                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                   -H "Content-Type: application/json" \
                                                                   --data '{"targets":[{"target":"url","constraint":{"operator":"matches","value":"*example.com/images/*"}}],"actions":[{"id":"always_online","value":"on"}],"priority":1,"status":"active"}'
                                                              Response (example)
                                                              {
                                                                "success": true,
                                                                "errors": [],
                                                                "messages": [],
                                                                "result": {
                                                                  "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                  "targets": [
                                                                    {
                                                                      "target": "url",
                                                                      "constraint": {
                                                                        "operator": "matches",
                                                                        "value": "*example.com/images/*"
                                                                      }
                                                                    }
                                                                  ],
                                                                  "actions": [
                                                                    {
                                                                      "id": "always_online",
                                                                      "value": "on"
                                                                    }
                                                                  ],
                                                                  "priority": 1,
                                                                  "status": "active",
                                                                  "modified_on": "2014-01-01T05:20:00.12345Z",
                                                                  "created_on": "2014-01-01T05:20:00.12345Z"
                                                                }
                                                              }

                                                              DELETE Delete a page rule Betapermission needed: #zone:edit
                                                              • free
                                                              • pro
                                                              • business
                                                              • enterprise

                                                              DELETE /zones/:zone_identifier/pagerules/:identifier
                                                              cURL (example)
                                                              curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/pagerules/9a7806061c88ada191ed06f989cc3dac" \
                                                                   -H "X-Auth-Email: user@example.com" \
                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                   -H "Content-Type: application/json"
                                                              Response (example)
                                                              {
                                                                "success": true,
                                                                "errors": [],
                                                                "messages": [],
                                                                "result": {
                                                                  "id": "9a7806061c88ada191ed06f989cc3dac"
                                                                }
                                                              }

                                                              Firewall access rule for a Zone

                                                              An IP, IP range, or country specific firewall rule applied directly to a zone or inherited from user or organization-level rules.

                                                              Access Rules are a way to allow, challenge, or block requests to your website based on the IP address, IP address range, or country of the browser making the request.

                                                              You can apply Access Rules to one zone only or all zones in your account. See the User-level or Organization-level access rules endpoints for creating rules that are applied across all zones owned by the user or organization.

                                                              Object definition

                                                              View properties and constraints defined on the object

                                                              Show definition

                                                              GET List access rules
                                                              • free
                                                              • pro
                                                              • business
                                                              • enterprise

                                                              Search, sort, and filter IP/country access rules

                                                              GET /zones/:zone_id/firewall/access_rules/rules

                                                              Optional parameters

                                                              Name /typeDescription /exampleConstraints
                                                              mode
                                                              string

                                                              The action to apply to a matched request

                                                              "challenge"
                                                              • valid values: block, challenge, whitelist
                                                              match
                                                              string

                                                              Whether to match all search requirements or at least one (any)

                                                              "all"
                                                              • default value: all
                                                              • valid values: any, all
                                                              scope_type
                                                              string

                                                              The scope of the rules

                                                              "zone"
                                                              • valid values: user, organization, zone
                                                              configuration_value
                                                              string

                                                              Search by IP, range, or country code

                                                              "1.2.3.4"
                                                              • notes: IP is a single IPv4 address. IP range has a subnet of /16 or /24. Country code is an ISO 2-letter country code.
                                                              order
                                                              string

                                                              Field to order rules by

                                                              "scope_type"
                                                              • valid values: scope_type, configuration_target, configuration_value, mode
                                                              page
                                                              number

                                                              Page number of paginated results

                                                              1
                                                              • default value: 1
                                                              • min value: 1
                                                              per_page
                                                              number

                                                              Number of rules per page

                                                              50
                                                              • default value: 50
                                                              • min value: 5
                                                              • max value: 100
                                                              configuration_target
                                                              string

                                                              The rule configuration target

                                                              "ip"
                                                              • valid values: ip, ip_range, country
                                                              direction
                                                              string

                                                              Direction to order rules

                                                              "desc"
                                                              • valid values: asc, desc
                                                              cURL (example)
                                                              curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/access_rules/rules?scope_type=zone&mode=challenge&configuration_target=ip&configuration_value=1.2.3.4&page=1&per_page=50&order=scope_type&direction=desc&match=all" \
                                                                   -H "X-Auth-Email: user@example.com" \
                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                   -H "Content-Type: application/json"
                                                              Response (example)
                                                              {
                                                                "success": true,
                                                                "errors": [],
                                                                "messages": [],
                                                                "result": [
                                                                  {
                                                                    "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                                                                    "notes": "This rule is on because of an event that occured on date X",
                                                                    "allowed_modes": [
                                                                      "whitelist",
                                                                      "block",
                                                                      "challenge"
                                                                    ],
                                                                    "mode": "challenge",
                                                                    "configuration": {
                                                                      "target": "ip",
                                                                      "value": "1.2.3.4"
                                                                    },
                                                                    "scope": {
                                                                      "id": "7c5dae5552338874e5053f2534d2767a",
                                                                      "email": "user@example.com",
                                                                      "type": "user"
                                                                    },
                                                                    "created_on": "2014-01-01T05:20:00.12345Z",
                                                                    "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                  }
                                                                ],
                                                                "result_info": {
                                                                  "page": 1,
                                                                  "per_page": 20,
                                                                  "count": 1,
                                                                  "total_count": 2000
                                                                }
                                                              }

                                                              POST Create access rule
                                                              • free
                                                              • pro
                                                              • business
                                                              • enterprise

                                                              Make a new IP, IP range, or country access rule for the zone. Note: If you would like to create an access rule that applies across all of your owned zones, use the user or organization firewall endpoints as appropriate.

                                                              POST /zones/:zone_id/firewall/access_rules/rules

                                                              Required parameters

                                                              Name /typeDescription /exampleConstraints
                                                              mode
                                                              string

                                                              The action to apply to a matched request

                                                              "challenge"
                                                              • valid values: block, challenge, whitelist
                                                              configuration
                                                              object

                                                              Rule configuration

                                                              { "target": "ip", "value": "1.2.3.4" }
                                                              One of the following:

                                                                Optional parameters

                                                                Name /typeDescription /exampleConstraints
                                                                notes
                                                                string

                                                                A personal note about the rule. Typically used as a reminder or explanation for the rule.

                                                                "This rule is on because of an event that occured on date X"
                                                                  cURL (example)
                                                                  curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/access_rules/rules" \
                                                                       -H "X-Auth-Email: user@example.com" \
                                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                       -H "Content-Type: application/json" \
                                                                       --data '{"mode":"challenge","configuration":{"target":"ip","value":"1.2.3.4"},"notes":"This rule is on because of an event that occured on date X"}'
                                                                  Response (example)
                                                                  {
                                                                    "success": true,
                                                                    "errors": [],
                                                                    "messages": [],
                                                                    "result": {
                                                                      "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                                                                      "notes": "This rule is on because of an event that occured on date X",
                                                                      "allowed_modes": [
                                                                        "whitelist",
                                                                        "block",
                                                                        "challenge"
                                                                      ],
                                                                      "mode": "challenge",
                                                                      "configuration": {
                                                                        "target": "ip",
                                                                        "value": "1.2.3.4"
                                                                      },
                                                                      "scope": {
                                                                        "id": "7c5dae5552338874e5053f2534d2767a",
                                                                        "email": "user@example.com",
                                                                        "type": "user"
                                                                      },
                                                                      "created_on": "2014-01-01T05:20:00.12345Z",
                                                                      "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                    }
                                                                  }

                                                                  PATCH Update access rule
                                                                  • free
                                                                  • pro
                                                                  • business
                                                                  • enterprise

                                                                  Update rule state and/or configuration for the zone. Note: you can only edit rules in the 'zone' group via this endpoint. Use the appropriate owner rules endpoint if trying to manage owner-level rules

                                                                  PATCH /zones/:zone_id/firewall/access_rules/rules/:identifier

                                                                  Optional parameters

                                                                  Name /typeDescription /exampleConstraints
                                                                  mode
                                                                  string

                                                                  The action to apply to a matched request

                                                                  "challenge"
                                                                  • valid values: block, challenge, whitelist
                                                                  notes
                                                                  string

                                                                  A personal note about the rule. Typically used as a reminder or explanation for the rule.

                                                                  "This rule is on because of an event that occured on date X"
                                                                    cURL (example)
                                                                    curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/access_rules/rules/92f17202ed8bd63d69a66b86a49a8f6b" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json" \
                                                                         --data '{"mode":"challenge","notes":"This rule is on because of an event that occured on date X"}'
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": {
                                                                        "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                                                                        "notes": "This rule is on because of an event that occured on date X",
                                                                        "allowed_modes": [
                                                                          "whitelist",
                                                                          "block",
                                                                          "challenge"
                                                                        ],
                                                                        "mode": "challenge",
                                                                        "configuration": {
                                                                          "target": "ip",
                                                                          "value": "1.2.3.4"
                                                                        },
                                                                        "scope": {
                                                                          "id": "7c5dae5552338874e5053f2534d2767a",
                                                                          "email": "user@example.com",
                                                                          "type": "user"
                                                                        },
                                                                        "created_on": "2014-01-01T05:20:00.12345Z",
                                                                        "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                      }
                                                                    }

                                                                    DELETE Delete access rule
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Remove an access rule so it is no longer evaluated during requests. Optionally, specify how to delete rules that match the mode and configuration across all other zones that this zone owner manages. 'none' is the default, and will only delete this rule. 'basic' will delete rules that match the same mode and configuration. 'aggressive' will delete rules that match the same configuration.

                                                                    DELETE /zones/:zone_id/firewall/access_rules/rules/:identifier

                                                                    Optional parameters

                                                                    Name /typeDescription /exampleConstraints
                                                                    cascade
                                                                    string

                                                                    The level to attempt to delete rules defined on other zones that are similar to this rule

                                                                    "none"
                                                                    • default value: none
                                                                    • valid values: none, basic, aggressive
                                                                    cURL (example)
                                                                    curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/access_rules/rules/92f17202ed8bd63d69a66b86a49a8f6b" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json" \
                                                                         --data '{"cascade":"none"}'
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": {
                                                                        "id": "92f17202ed8bd63d69a66b86a49a8f6b"
                                                                      }
                                                                    }

                                                                    WAF Rule Packages

                                                                    Web application firewall rule package applied to a zone

                                                                    Web application firewall rule packages are collections of rule groups.

                                                                    Object definitions

                                                                    View properties and constraints defined on the object

                                                                    Show definitions

                                                                    GET List firewall packages
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Retrieve firewall packages for a zone

                                                                    GET /zones/:zone_identifier/firewall/waf/packages

                                                                    Optional parameters

                                                                    Name /typeDescription /exampleConstraints
                                                                    name
                                                                    string

                                                                    Name of the firewall package

                                                                    "WordPress rules"
                                                                    • read only
                                                                    page
                                                                    number

                                                                    Page number of paginated results

                                                                    1
                                                                    • default value: 1
                                                                    • min value: 1
                                                                    per_page
                                                                    number

                                                                    Number of packages per page

                                                                    50
                                                                    • default value: 50
                                                                    • min value: 5
                                                                    • max value: 100
                                                                    order
                                                                    string

                                                                    Field to order packages by

                                                                    "status"
                                                                    • valid values: name
                                                                    direction
                                                                    string

                                                                    Direction to order packages

                                                                    "desc"
                                                                    • valid values: asc, desc
                                                                    match
                                                                    string

                                                                    Whether to match all search requirements or at least one (any)

                                                                    "all"
                                                                    • default value: all
                                                                    • valid values: any, all
                                                                    cURL (example)
                                                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages?name=WordPress rules&page=1&per_page=50&order=status&direction=desc&match=all" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json"
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": [
                                                                        {
                                                                          "id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                          "name": "WordPress rules",
                                                                          "description": "Common WordPress exploit protections",
                                                                          "detection_mode": "traditional",
                                                                          "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                          "status": "active"
                                                                        }
                                                                      ],
                                                                      "result_info": {
                                                                        "page": 1,
                                                                        "per_page": 20,
                                                                        "count": 1,
                                                                        "total_count": 2000
                                                                      }
                                                                    }

                                                                    GET Firewall package info
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Get information about a single firewall package

                                                                    GET /zones/:zone_identifier/firewall/waf/packages/:identifier
                                                                    cURL (example)
                                                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json"
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": {
                                                                        "id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                        "name": "WordPress rules",
                                                                        "description": "Common WordPress exploit protections",
                                                                        "detection_mode": "traditional",
                                                                        "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                        "status": "active"
                                                                      }
                                                                    }

                                                                    PATCH Change anomaly-detection web application firewall package settings
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Change the sensitivity and action for an anomaly detection type WAF rule package

                                                                    PATCH /zones/:zone_identifier/firewall/waf/packages/:identifier

                                                                    Optional parameters

                                                                    Name /typeDescription /exampleConstraints
                                                                    sensitivity
                                                                    string

                                                                    The sensitivity of the firewall package.

                                                                    "high"
                                                                    • default value: high
                                                                    • valid values: high, low, off
                                                                    action_mode
                                                                    string

                                                                    The default action that will be taken for rules under the firewall package.

                                                                    "challenge"
                                                                    • default value: challenge
                                                                    • valid values: simulate, block, challenge
                                                                    cURL (example)
                                                                    curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json" \
                                                                         --data '{"sensitivity":"high","action_mode":"challenge"}'
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": {
                                                                        "id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                        "name": "WordPress rules",
                                                                        "description": "Common WordPress exploit protections",
                                                                        "detection_mode": "anomaly",
                                                                        "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                        "status": "active",
                                                                        "sensitivity": "high",
                                                                        "action_mode": "challenge"
                                                                      }
                                                                    }

                                                                    WAF Rule Groups

                                                                    A group of web application firewall rules that share common functionality and traits

                                                                    Object definition

                                                                    View properties and constraints defined on the object

                                                                    Show definition

                                                                    GET List rule groups
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Search, list, and sort rule groups contained within a package

                                                                    GET /zones/:zone_identifier/firewall/waf/packages/:package_identifier/groups

                                                                    Optional parameters

                                                                    Name /typeDescription /exampleConstraints
                                                                    name
                                                                    string

                                                                    Name of the firewall rule group

                                                                    "Project Honey Pot"
                                                                    • read only
                                                                    mode
                                                                    string

                                                                    Whether or not the rules contained within this group are configurable/usable

                                                                    "on"
                                                                    • default value: on
                                                                    • valid values: on, off
                                                                    rules_count
                                                                    number

                                                                    How many rules are contained within this group

                                                                    10
                                                                    • default value: 0
                                                                    • read only
                                                                    page
                                                                    number

                                                                    Page number of paginated results

                                                                    1
                                                                    • default value: 1
                                                                    • min value: 1
                                                                    per_page
                                                                    number

                                                                    Number of groups per page

                                                                    50
                                                                    • default value: 50
                                                                    • min value: 5
                                                                    • max value: 100
                                                                    order
                                                                    string

                                                                    Field to order groups by

                                                                    "mode"
                                                                    • valid values: mode, rules_count
                                                                    direction
                                                                    string

                                                                    Direction to order groups

                                                                    "desc"
                                                                    • valid values: asc, desc
                                                                    match
                                                                    string

                                                                    Whether to match all search requirements or at least one (any)

                                                                    "all"
                                                                    • default value: all
                                                                    • valid values: any, all
                                                                    cURL (example)
                                                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b/groups?name=Project Honey Pot&mode=on&rules_count=10&page=1&per_page=50&order=mode&direction=desc&match=all" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json"
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": [
                                                                        {
                                                                          "id": "de677e5818985db1285d0e80225f06e5",
                                                                          "name": "Project Honey Pot",
                                                                          "description": "Group designed to protect against IP addresses that are a threat and typically used to launch DDoS attacks",
                                                                          "rules_count": 10,
                                                                          "modified_rules_count": 2,
                                                                          "package_id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                          "mode": "on",
                                                                          "allowed_modes": [
                                                                            "on",
                                                                            "off"
                                                                          ]
                                                                        }
                                                                      ],
                                                                      "result_info": {
                                                                        "page": 1,
                                                                        "per_page": 20,
                                                                        "count": 1,
                                                                        "total_count": 2000
                                                                      }
                                                                    }

                                                                    GET Rule group info
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Get a single rule group

                                                                    GET /zones/:zone_identifier/firewall/waf/packages/:package_identifier/groups/:identifier
                                                                    cURL (example)
                                                                    curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b/groups/de677e5818985db1285d0e80225f06e5" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json"
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": {
                                                                        "id": "de677e5818985db1285d0e80225f06e5",
                                                                        "name": "Project Honey Pot",
                                                                        "description": "Group designed to protect against IP addresses that are a threat and typically used to launch DDoS attacks",
                                                                        "rules_count": 10,
                                                                        "modified_rules_count": 2,
                                                                        "package_id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                        "mode": "on",
                                                                        "allowed_modes": [
                                                                          "on",
                                                                          "off"
                                                                        ]
                                                                      }
                                                                    }

                                                                    PATCH Update Rule group
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Update the state of a rule group

                                                                    PATCH /zones/:zone_identifier/firewall/waf/packages/:package_identifier/groups/:identifier

                                                                    Optional parameters

                                                                    Name /typeDescription /exampleConstraints
                                                                    mode
                                                                    string

                                                                    Whether or not the rules contained within this group are configurable/usable

                                                                    "on"
                                                                    • default value: on
                                                                    • valid values: on, off
                                                                    cURL (example)
                                                                    curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b/groups/de677e5818985db1285d0e80225f06e5" \
                                                                         -H "X-Auth-Email: user@example.com" \
                                                                         -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                         -H "Content-Type: application/json" \
                                                                         --data '{"mode":"on"}'
                                                                    Response (example)
                                                                    {
                                                                      "success": true,
                                                                      "errors": [],
                                                                      "messages": [],
                                                                      "result": {
                                                                        "id": "de677e5818985db1285d0e80225f06e5",
                                                                        "name": "Project Honey Pot",
                                                                        "description": "Group designed to protect against IP addresses that are a threat and typically used to launch DDoS attacks",
                                                                        "rules_count": 10,
                                                                        "modified_rules_count": 2,
                                                                        "package_id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                        "mode": "on",
                                                                        "allowed_modes": [
                                                                          "on",
                                                                          "off"
                                                                        ]
                                                                      }
                                                                    }

                                                                    WAF Rules

                                                                    A firewall rule for a zone

                                                                    Object definitions

                                                                    View properties and constraints defined on the object

                                                                    Show definitions

                                                                    GET List rules
                                                                    • free
                                                                    • pro
                                                                    • business
                                                                    • enterprise

                                                                    Search, sort, and filter rules within a package

                                                                    GET /zones/:zone_id/firewall/waf/packages/:package_id/rules

                                                                    Optional parameters

                                                                    Name /typeDescription /exampleConstraints
                                                                    mode
                                                                    object

                                                                    The rule mode

                                                                    {}
                                                                    One of the following:
                                                                    Whether or not the anomaly-based rule will be used when evaluating the request.
                                                                    The mode that the traditional firewall rule uses when triggered.
                                                                    Defines whether or not the white-list rule should be allowed when matching the request.
                                                                      priority
                                                                      number

                                                                      The order in which the individual rule is executed within the related group

                                                                      5
                                                                      • read only
                                                                      match
                                                                      string

                                                                      Whether to match all search requirements or at least one (any)

                                                                      "all"
                                                                      • default value: all
                                                                      • valid values: any, all
                                                                      order
                                                                      string

                                                                      Field to order rules by

                                                                      "status"
                                                                      • valid values: priority, group_id, description
                                                                      page
                                                                      number

                                                                      Page number of paginated results

                                                                      1
                                                                      • default value: 1
                                                                      • min value: 1
                                                                      per_page
                                                                      number

                                                                      Number of rules per page

                                                                      50
                                                                      • default value: 50
                                                                      • min value: 5
                                                                      • max value: 100
                                                                      group_id
                                                                      string

                                                                      WAF group identifier tag

                                                                      "de677e5818985db1285d0e80225f06e5"
                                                                      • max length: 32
                                                                      • read only
                                                                      description
                                                                      string

                                                                      Public description of the rule

                                                                      "SQL injection prevention for SELECT statements"
                                                                      • read only
                                                                      direction
                                                                      string

                                                                      Direction to order rules

                                                                      "desc"
                                                                      • valid values: asc, desc
                                                                      cURL (example)
                                                                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b/rules?description=SQL injection prevention for SELECT statements&mode=[object Object]&priority=5&group_id=de677e5818985db1285d0e80225f06e5&page=1&per_page=50&order=status&direction=desc&match=all" \
                                                                           -H "X-Auth-Email: user@example.com" \
                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                           -H "Content-Type: application/json"
                                                                      Response (example)
                                                                      {
                                                                        "success": true,
                                                                        "errors": [],
                                                                        "messages": [],
                                                                        "result": [
                                                                          {
                                                                            "id": "f939de3be84e66e757adcdcb87908023",
                                                                            "description": "SQL injection prevention for SELECT statements",
                                                                            "priority": 5,
                                                                            "group": {
                                                                              "id": "de677e5818985db1285d0e80225f06e5",
                                                                              "name": "Project Honey Pot"
                                                                            },
                                                                            "package_id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                            "allowed_modes": [
                                                                              "on",
                                                                              "off"
                                                                            ],
                                                                            "mode": "on"
                                                                          }
                                                                        ],
                                                                        "result_info": {
                                                                          "page": 1,
                                                                          "per_page": 20,
                                                                          "count": 1,
                                                                          "total_count": 2000
                                                                        }
                                                                      }

                                                                      GET Rule info
                                                                      • free
                                                                      • pro
                                                                      • business
                                                                      • enterprise

                                                                      Individual information about a rule

                                                                      GET /zones/:zone_id/firewall/waf/packages/:package_id/rules/:identifier
                                                                      cURL (example)
                                                                      curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b/rules/f939de3be84e66e757adcdcb87908023" \
                                                                           -H "X-Auth-Email: user@example.com" \
                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                           -H "Content-Type: application/json"
                                                                      Response (example)
                                                                      {
                                                                        "success": true,
                                                                        "errors": [],
                                                                        "messages": [],
                                                                        "result": {
                                                                          "id": "f939de3be84e66e757adcdcb87908023",
                                                                          "description": "SQL injection prevention for SELECT statements",
                                                                          "priority": 5,
                                                                          "group": {
                                                                            "id": "de677e5818985db1285d0e80225f06e5",
                                                                            "name": "Project Honey Pot"
                                                                          },
                                                                          "package_id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                          "allowed_modes": [
                                                                            "on",
                                                                            "off"
                                                                          ],
                                                                          "mode": "on"
                                                                        }
                                                                      }

                                                                      PATCH Update rule
                                                                      • free
                                                                      • pro
                                                                      • business
                                                                      • enterprise

                                                                      Update the action the rule will perform if triggered on the zone

                                                                      PATCH /zones/:zone_id/firewall/waf/packages/:package_id/rules/:identifier

                                                                      Optional parameters

                                                                      Name /typeDescription /exampleConstraints
                                                                      mode
                                                                      string

                                                                      The mode to use when the rule is triggered. Value is restricted based on the allowed_modes of the rule

                                                                      "on"
                                                                      • valid values: default, disable, simulate, block, challenge, on, off
                                                                      cURL (example)
                                                                      curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/firewall/waf/packages/a25a9a7e9c00afc1fb2e0245519d725b/rules/f939de3be84e66e757adcdcb87908023" \
                                                                           -H "X-Auth-Email: user@example.com" \
                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                           -H "Content-Type: application/json" \
                                                                           --data '{"mode":"on"}'
                                                                      Response (example)
                                                                      {
                                                                        "success": true,
                                                                        "errors": [],
                                                                        "messages": [],
                                                                        "result": {
                                                                          "id": "f939de3be84e66e757adcdcb87908023",
                                                                          "description": "SQL injection prevention for SELECT statements",
                                                                          "priority": 5,
                                                                          "group": {
                                                                            "id": "de677e5818985db1285d0e80225f06e5",
                                                                            "name": "Project Honey Pot"
                                                                          },
                                                                          "package_id": "a25a9a7e9c00afc1fb2e0245519d725b",
                                                                          "allowed_modes": [
                                                                            "on",
                                                                            "off"
                                                                          ],
                                                                          "mode": "on"
                                                                        }
                                                                      }

                                                                      Analyze Certificate

                                                                      Object definition

                                                                      View properties and constraints defined on the object

                                                                      Show definition

                                                                      POST Analyze Certificate permission needed: #ssl:read
                                                                      • free
                                                                      • pro
                                                                      • business
                                                                      • enterprise

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

                                                                      POST /zones/:identifier/ssl/analyze

                                                                      Optional parameters

                                                                      Name /typeDescription /exampleConstraints
                                                                      certificate
                                                                      string

                                                                      The zone's SSL certificate or certificate and the intermediate(s)

                                                                      "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n"
                                                                        bundle_method
                                                                        string

                                                                        A ubiquitous bundle is a bundle that has a higher probability of being verified everywhere, even by clients using outdated or unusual trust stores. An optimal bundle is a bundle with the shortest chain and newest intermediates. A forced method attempt to use the certificate/chain as defined by the input

                                                                        "ubiquitous"
                                                                        • default value: ubiquitous
                                                                        • valid values: ubiquitous, optimal, force
                                                                        cURL (example)
                                                                        curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/ssl/analyze" \
                                                                             -H "X-Auth-Email: user@example.com" \
                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                             -H "Content-Type: application/json" \
                                                                             --data '{"certificate":"-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n","bundle_method":"ubiquitous"}'
                                                                        Response (example)
                                                                        {
                                                                          "success": true,
                                                                          "errors": [],
                                                                          "messages": [],
                                                                          "result": {
                                                                            "hosts": [
                                                                              "example.com"
                                                                            ],
                                                                            "signature_algorithm": "SHA256WithRSA",
                                                                            "expires_on": "2016-01-01T05:20:00Z"
                                                                          }
                                                                        }

                                                                        Certificate Packs

                                                                        Object definition

                                                                        View properties and constraints defined on the object

                                                                        Show definition

                                                                        GET List all certificate packs permission needed: #ssl:read
                                                                        • free
                                                                        • pro
                                                                        • business
                                                                        • enterprise

                                                                        For a given zone, list all certificate packs

                                                                        GET /zones/:zone_identifier/ssl/certificate_packs
                                                                        cURL (example)
                                                                        curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/ssl/certificate_packs" \
                                                                             -H "X-Auth-Email: user@example.com" \
                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                             -H "Content-Type: application/json"
                                                                        Response (example)
                                                                        {
                                                                          "success": true,
                                                                          "errors": [],
                                                                          "messages": [],
                                                                          "result": [
                                                                            {
                                                                              "id": "3822ff90-ea29-44df-9e55-21300bb9419b",
                                                                              "type": "custom",
                                                                              "hosts": [
                                                                                "example.com",
                                                                                "www.example.com",
                                                                                "foo.example.com"
                                                                              ],
                                                                              "certificates": [
                                                                                {
                                                                                  "id": "7e7b8deba8538af625850b7b2530034c",
                                                                                  "hosts": [
                                                                                    "example.com"
                                                                                  ],
                                                                                  "issuer": "GlobalSign",
                                                                                  "signature": "SHA256WithRSA",
                                                                                  "status": "active",
                                                                                  "bundle_method": "ubiquitous",
                                                                                  "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                  "uploaded_on": "2014-01-01T05:20:00Z",
                                                                                  "modified_on": "2014-01-01T05:20:00Z",
                                                                                  "expires_on": "2016-01-01T05:20:00Z",
                                                                                  "priority": 1
                                                                                }
                                                                              ],
                                                                              "primary_certificate": "7e7b8deba8538af625850b7b2530034c"
                                                                            }
                                                                          ],
                                                                          "result_info": {
                                                                            "page": 1,
                                                                            "per_page": 20,
                                                                            "count": 1,
                                                                            "total_count": 2000
                                                                          }
                                                                        }

                                                                        POST Order a certificate pack permission needed: #ssl:read, #ssl:write
                                                                        • free
                                                                        • pro
                                                                        • business
                                                                        • enterprise

                                                                        For a given zone, order a certificate pack with a list of hostnames

                                                                        POST /zones/:zone_identifier/ssl/certificate_packs

                                                                        Optional parameters

                                                                        Name /typeDescription /exampleConstraints
                                                                        hosts
                                                                        array

                                                                        Comma separated list of valid host names for the certificate packs

                                                                        [ "example.com", "www.example.com", "foo.example.com" ]
                                                                          cURL (example)
                                                                          curl -X POST "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/ssl/certificate_packs" \
                                                                               -H "X-Auth-Email: user@example.com" \
                                                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                               -H "Content-Type: application/json" \
                                                                               --data '{"hosts":["example.com","www.example.com","foo.example.com"]}'
                                                                          Response (example)
                                                                          {
                                                                            "success": true,
                                                                            "errors": [],
                                                                            "messages": [],
                                                                            "result": {
                                                                              "id": "3822ff90-ea29-44df-9e55-21300bb9419b",
                                                                              "type": "custom",
                                                                              "hosts": [
                                                                                "example.com",
                                                                                "www.example.com",
                                                                                "foo.example.com"
                                                                              ],
                                                                              "certificates": [
                                                                                {
                                                                                  "id": "7e7b8deba8538af625850b7b2530034c",
                                                                                  "hosts": [
                                                                                    "example.com"
                                                                                  ],
                                                                                  "issuer": "GlobalSign",
                                                                                  "signature": "SHA256WithRSA",
                                                                                  "status": "active",
                                                                                  "bundle_method": "ubiquitous",
                                                                                  "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                  "uploaded_on": "2014-01-01T05:20:00Z",
                                                                                  "modified_on": "2014-01-01T05:20:00Z",
                                                                                  "expires_on": "2016-01-01T05:20:00Z",
                                                                                  "priority": 1
                                                                                }
                                                                              ],
                                                                              "primary_certificate": "7e7b8deba8538af625850b7b2530034c"
                                                                            }
                                                                          }

                                                                          PATCH Edit a certificate pack permission needed: #ssl:read, #ssl:write
                                                                          • free
                                                                          • pro
                                                                          • business
                                                                          • enterprise

                                                                          For a given certificate pack, edit the hosts

                                                                          PATCH /zones/:zone_identifier/ssl/certificate_packs/:identifier

                                                                          Optional parameters

                                                                          Name /typeDescription /exampleConstraints
                                                                          hosts
                                                                          array

                                                                          Comma separated list of valid host names for the certificate packs

                                                                          [ "example.com", "www.example.com", "foo.example.com" ]
                                                                            cURL (example)
                                                                            curl -X PATCH "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/ssl/certificate_packs/3822ff90-ea29-44df-9e55-21300bb9419b" \
                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                 -H "Content-Type: application/json" \
                                                                                 --data '{"hosts":["example.com","www.example.com","foo.example.com"]}'
                                                                            Response (example)
                                                                            {
                                                                              "success": true,
                                                                              "errors": [],
                                                                              "messages": [],
                                                                              "result": {
                                                                                "id": "3822ff90-ea29-44df-9e55-21300bb9419b",
                                                                                "type": "custom",
                                                                                "hosts": [
                                                                                  "example.com",
                                                                                  "www.example.com",
                                                                                  "foo.example.com"
                                                                                ],
                                                                                "certificates": [
                                                                                  {
                                                                                    "id": "7e7b8deba8538af625850b7b2530034c",
                                                                                    "hosts": [
                                                                                      "example.com"
                                                                                    ],
                                                                                    "issuer": "GlobalSign",
                                                                                    "signature": "SHA256WithRSA",
                                                                                    "status": "active",
                                                                                    "bundle_method": "ubiquitous",
                                                                                    "zone_id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                    "uploaded_on": "2014-01-01T05:20:00Z",
                                                                                    "modified_on": "2014-01-01T05:20:00Z",
                                                                                    "expires_on": "2016-01-01T05:20:00Z",
                                                                                    "priority": 1
                                                                                  }
                                                                                ],
                                                                                "primary_certificate": "7e7b8deba8538af625850b7b2530034c"
                                                                              }
                                                                            }

                                                                            Certificate Packs error codes

                                                                            CodeDescription
                                                                            1400Missing required property in request
                                                                            1401Error connecting to certificate service
                                                                            1402Error connecting to certificate service
                                                                            1403Bad response certificate service
                                                                            1404Bad response certificate service
                                                                            1406Bad response certificate service
                                                                            1407Bad response certificate service
                                                                            1408ID is not a dedicated certificate.

                                                                            SSL Verification

                                                                            SSL Verification for a Zone

                                                                            Object definition

                                                                            View properties and constraints defined on the object

                                                                            Show definition

                                                                            GET Get SSL Verification permission needed: #ssl:read
                                                                            • free
                                                                            • pro
                                                                            • business
                                                                            • enterprise

                                                                            Get SSL Verification Info for a Zone

                                                                            GET /zones/:zone_identifier/ssl/verification
                                                                            cURL (example)
                                                                            curl -X GET "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/ssl/verification" \
                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                 -H "Content-Type: application/json"
                                                                            Response (example)
                                                                            {
                                                                              "result": [
                                                                                {
                                                                                  "certificate_status": "active",
                                                                                  "verification_type": "cname",
                                                                                  "verification_info": {
                                                                                    "record_name": "b3b90cfedd89a3e487d3e383c56c4267.example.com",
                                                                                    "record_target": "6979be7e4cfc9e5c603e31df7efac9cc60fee82d.comodoca.com"
                                                                                  }
                                                                                }
                                                                              ]
                                                                            }

                                                                            Zone Subscription

                                                                            A subscription associated with a zone containing plan and add-ons

                                                                            Object definition

                                                                            View properties and constraints defined on the object

                                                                            Show definition

                                                                            GET Get Zone Subscription permission needed: #billing:read
                                                                            • free
                                                                            • pro
                                                                            • business
                                                                            • enterprise

                                                                            Zone subscription details

                                                                            GET /zones/:identifier/subscription
                                                                            cURL (example)
                                                                            curl -X GET "https://api.cloudflare.com/client/v4/zones/506e3185e9c882d175a2d0cb0093d9f2/subscription" \
                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                 -H "Content-Type: application/json"
                                                                            Response (example)
                                                                            {
                                                                              "success": true,
                                                                              "errors": [],
                                                                              "messages": [],
                                                                              "result": {
                                                                                "id": "506e3185e9c882d175a2d0cb0093d9f2",
                                                                                "state": "Paid",
                                                                                "price": 20,
                                                                                "currency": "USD",
                                                                                "component_values": [
                                                                                  {
                                                                                    "name": "page_rules",
                                                                                    "value": 20,
                                                                                    "default": 5,
                                                                                    "price": 5
                                                                                  }
                                                                                ],
                                                                                "zone": {
                                                                                  "id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                  "name": "example.com"
                                                                                },
                                                                                "frequency": "monthly",
                                                                                "rate_plan": {
                                                                                  "id": "free",
                                                                                  "public_name": "Business Plan",
                                                                                  "currency": "USD",
                                                                                  "scope": "zone",
                                                                                  "externally_managed": false
                                                                                },
                                                                                "current_period_end": "2014-03-31T12:20:00Z",
                                                                                "current_period_start": "2014-05-11T12:20:00Z"
                                                                              }
                                                                            }

                                                                            POST Create Zone Subscription permission needed: #billing:read#billing:edit
                                                                            • free
                                                                            • pro
                                                                            • business
                                                                            • enterprise

                                                                            Create a Zone subscriptions. Either plan or add-ons

                                                                            POST /zones/:identifier/subscriptions

                                                                            Optional parameters

                                                                            Name /typeDescription /exampleConstraints
                                                                            current_period_end
                                                                            string

                                                                            The end of the current period, and also when the next billing is due

                                                                            "2014-03-31T12:20:00Z"
                                                                            • read only
                                                                            component_values
                                                                            array

                                                                            The list of add-ons subscribed to

                                                                            [ { "name": "page_rules", "value": 20, "default": 5, "price": 5 } ]
                                                                              rate_plan
                                                                              object

                                                                              The rate plan applied to the subscription

                                                                              { "id": "free", "public_name": "Business Plan", "currency": "USD", "scope": "zone", "externally_managed": false }
                                                                                price
                                                                                number

                                                                                The price of the subscription that will be billed, in US dollars

                                                                                20
                                                                                • read only
                                                                                current_period_start
                                                                                string

                                                                                When the current billing period started, may be the same as InitialPeriodStart if this is the first period

                                                                                "2014-05-11T12:20:00Z"
                                                                                • read only
                                                                                zone
                                                                                object

                                                                                A simple zone object. May have null properties if not a zone subscription.

                                                                                { "id": "023e105f4ecef8ad9ca31a8372d0c353", "name": "example.com" }
                                                                                  currency
                                                                                  string

                                                                                  The monetary unit in which pricing information is displayed

                                                                                  "USD"
                                                                                  • read only
                                                                                  state
                                                                                  string

                                                                                  The state that the subscription is in

                                                                                  "Paid"
                                                                                  • valid values: Trial, Provisioned, Paid, AwaitingPayment, Cancelled, Failed, Expired
                                                                                  • read only
                                                                                  id
                                                                                  string

                                                                                  Subscription identifier tag

                                                                                  "506e3185e9c882d175a2d0cb0093d9f2"
                                                                                  • max length: 32
                                                                                  • read only
                                                                                  frequency
                                                                                  string

                                                                                  How often the subscription is renewed automatically

                                                                                  "monthly"
                                                                                  • valid values: weekly, monthly, quarterly, yearly
                                                                                  cURL (example)
                                                                                  curl -X POST "https://api.cloudflare.com/client/v4/zones/506e3185e9c882d175a2d0cb0093d9f2/subscriptions" \
                                                                                       -H "X-Auth-Email: user@example.com" \
                                                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                       -H "Content-Type: application/json" \
                                                                                       --data '{"id":"506e3185e9c882d175a2d0cb0093d9f2","state":"Paid","price":20,"currency":"USD","component_values":[{"name":"page_rules","value":20,"default":5,"price":5}],"zone":{"id":"023e105f4ecef8ad9ca31a8372d0c353","name":"example.com"},"frequency":"monthly","rate_plan":{"id":"free","public_name":"Business Plan","currency":"USD","scope":"zone","externally_managed":false},"current_period_end":"2014-03-31T12:20:00Z","current_period_start":"2014-05-11T12:20:00Z"}'
                                                                                  Response (example)
                                                                                  {
                                                                                    "success": true,
                                                                                    "errors": [],
                                                                                    "messages": [],
                                                                                    "result": {
                                                                                      "id": "506e3185e9c882d175a2d0cb0093d9f2",
                                                                                      "state": "Paid",
                                                                                      "price": 20,
                                                                                      "currency": "USD",
                                                                                      "component_values": [
                                                                                        {
                                                                                          "name": "page_rules",
                                                                                          "value": 20,
                                                                                          "default": 5,
                                                                                          "price": 5
                                                                                        }
                                                                                      ],
                                                                                      "zone": {
                                                                                        "id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                        "name": "example.com"
                                                                                      },
                                                                                      "frequency": "monthly",
                                                                                      "rate_plan": {
                                                                                        "id": "free",
                                                                                        "public_name": "Business Plan",
                                                                                        "currency": "USD",
                                                                                        "scope": "zone",
                                                                                        "externally_managed": false
                                                                                      },
                                                                                      "current_period_end": "2014-03-31T12:20:00Z",
                                                                                      "current_period_start": "2014-05-11T12:20:00Z"
                                                                                    }
                                                                                  }

                                                                                  PUT Update Zone Subscription permission needed: #billing:read#billing:edit
                                                                                  • free
                                                                                  • pro
                                                                                  • business
                                                                                  • enterprise

                                                                                  Update Zone subscriptions. Either plan and add-ons

                                                                                  PUT /zones/:identifier/subscriptions

                                                                                  Optional parameters

                                                                                  Name /typeDescription /exampleConstraints
                                                                                  current_period_end
                                                                                  string

                                                                                  The end of the current period, and also when the next billing is due

                                                                                  "2014-03-31T12:20:00Z"
                                                                                  • read only
                                                                                  component_values
                                                                                  array

                                                                                  The list of add-ons subscribed to

                                                                                  [ { "name": "page_rules", "value": 20, "default": 5, "price": 5 } ]
                                                                                    rate_plan
                                                                                    object

                                                                                    The rate plan applied to the subscription

                                                                                    { "id": "free", "public_name": "Business Plan", "currency": "USD", "scope": "zone", "externally_managed": false }
                                                                                      price
                                                                                      number

                                                                                      The price of the subscription that will be billed, in US dollars

                                                                                      20
                                                                                      • read only
                                                                                      current_period_start
                                                                                      string

                                                                                      When the current billing period started, may be the same as InitialPeriodStart if this is the first period

                                                                                      "2014-05-11T12:20:00Z"
                                                                                      • read only
                                                                                      zone
                                                                                      object

                                                                                      A simple zone object. May have null properties if not a zone subscription.

                                                                                      { "id": "023e105f4ecef8ad9ca31a8372d0c353", "name": "example.com" }
                                                                                        currency
                                                                                        string

                                                                                        The monetary unit in which pricing information is displayed

                                                                                        "USD"
                                                                                        • read only
                                                                                        state
                                                                                        string

                                                                                        The state that the subscription is in

                                                                                        "Paid"
                                                                                        • valid values: Trial, Provisioned, Paid, AwaitingPayment, Cancelled, Failed, Expired
                                                                                        • read only
                                                                                        id
                                                                                        string

                                                                                        Subscription identifier tag

                                                                                        "506e3185e9c882d175a2d0cb0093d9f2"
                                                                                        • max length: 32
                                                                                        • read only
                                                                                        frequency
                                                                                        string

                                                                                        How often the subscription is renewed automatically

                                                                                        "monthly"
                                                                                        • valid values: weekly, monthly, quarterly, yearly
                                                                                        cURL (example)
                                                                                        curl -X PUT "https://api.cloudflare.com/client/v4/zones/506e3185e9c882d175a2d0cb0093d9f2/subscriptions" \
                                                                                             -H "X-Auth-Email: user@example.com" \
                                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                             -H "Content-Type: application/json" \
                                                                                             --data '{"id":"506e3185e9c882d175a2d0cb0093d9f2","state":"Paid","price":20,"currency":"USD","component_values":[{"name":"page_rules","value":20,"default":5,"price":5}],"zone":{"id":"023e105f4ecef8ad9ca31a8372d0c353","name":"example.com"},"frequency":"monthly","rate_plan":{"id":"free","public_name":"Business Plan","currency":"USD","scope":"zone","externally_managed":false},"current_period_end":"2014-03-31T12:20:00Z","current_period_start":"2014-05-11T12:20:00Z"}'
                                                                                        Response (example)
                                                                                        {
                                                                                          "success": true,
                                                                                          "errors": [],
                                                                                          "messages": [],
                                                                                          "result": {
                                                                                            "id": "506e3185e9c882d175a2d0cb0093d9f2",
                                                                                            "state": "Paid",
                                                                                            "price": 20,
                                                                                            "currency": "USD",
                                                                                            "component_values": [
                                                                                              {
                                                                                                "name": "page_rules",
                                                                                                "value": 20,
                                                                                                "default": 5,
                                                                                                "price": 5
                                                                                              }
                                                                                            ],
                                                                                            "zone": {
                                                                                              "id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                              "name": "example.com"
                                                                                            },
                                                                                            "frequency": "monthly",
                                                                                            "rate_plan": {
                                                                                              "id": "free",
                                                                                              "public_name": "Business Plan",
                                                                                              "currency": "USD",
                                                                                              "scope": "zone",
                                                                                              "externally_managed": false
                                                                                            },
                                                                                            "current_period_end": "2014-03-31T12:20:00Z",
                                                                                            "current_period_start": "2014-05-11T12:20:00Z"
                                                                                          }
                                                                                        }

                                                                                        Organizations

                                                                                        An Organization is an entity which holds a set of zones for multiple users to interact with.

                                                                                        Object definition

                                                                                        View properties and constraints defined on the object

                                                                                        Show definition

                                                                                        GET Organization details permission needed: #organization:read
                                                                                        • free
                                                                                        • pro
                                                                                        • business
                                                                                        • enterprise

                                                                                        Get information about a specific organization that you are a member of

                                                                                        GET /organizations/:identifier
                                                                                        cURL (example)
                                                                                        curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823" \
                                                                                             -H "X-Auth-Email: user@example.com" \
                                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                             -H "Content-Type: application/json"
                                                                                        Response (example)
                                                                                        {
                                                                                          "success": true,
                                                                                          "errors": [],
                                                                                          "messages": [],
                                                                                          "result": {
                                                                                            "id": "01a7362d577a6c3019a474fd6f485823",
                                                                                            "name": "CloudFlare, Inc.",
                                                                                            "members": [
                                                                                              {
                                                                                                "id": "7c5dae5552338874e5053f2534d2767a",
                                                                                                "name": "John Smith",
                                                                                                "email": "user@example.com",
                                                                                                "status": "accepted",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ]
                                                                                              }
                                                                                            ],
                                                                                            "invites": [
                                                                                              {
                                                                                                "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                                                                                                "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "invited_member_email": "user@example.com",
                                                                                                "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "organization_name": "CloudFlare, Inc.",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ],
                                                                                                "invited_by": "user@example.com",
                                                                                                "invited_on": "2014-01-01T05:20:00Z",
                                                                                                "expires_on": "2014-01-01T05:20:00Z",
                                                                                                "status": "accepted"
                                                                                              }
                                                                                            ],
                                                                                            "roles": [
                                                                                              {
                                                                                                "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                "name": "Organization Admin",
                                                                                                "description": "Administrative access to the entire Organization",
                                                                                                "permissions": [
                                                                                                  "#zones:read"
                                                                                                ]
                                                                                              }
                                                                                            ]
                                                                                          }
                                                                                        }

                                                                                        PATCH Update organization permission needed: #organization:edit
                                                                                        • free
                                                                                        • pro
                                                                                        • business
                                                                                        • enterprise

                                                                                        Update an existing Organization

                                                                                        PATCH /organizations/:identifier

                                                                                        Optional parameters

                                                                                        Name /typeDescription /exampleConstraints
                                                                                        name
                                                                                        string

                                                                                        Organization Name

                                                                                        "CloudFlare, Inc."
                                                                                        • max length: 100
                                                                                        cURL (example)
                                                                                        curl -X PATCH "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823" \
                                                                                             -H "X-Auth-Email: user@example.com" \
                                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                             -H "Content-Type: application/json" \
                                                                                             --data '{"name":"CloudFlare, Inc."}'
                                                                                        Response (example)
                                                                                        {
                                                                                          "success": true,
                                                                                          "errors": [],
                                                                                          "messages": [],
                                                                                          "result": {
                                                                                            "id": "01a7362d577a6c3019a474fd6f485823",
                                                                                            "name": "CloudFlare, Inc.",
                                                                                            "members": [
                                                                                              {
                                                                                                "id": "7c5dae5552338874e5053f2534d2767a",
                                                                                                "name": "John Smith",
                                                                                                "email": "user@example.com",
                                                                                                "status": "accepted",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ]
                                                                                              }
                                                                                            ],
                                                                                            "invites": [
                                                                                              {
                                                                                                "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                                                                                                "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "invited_member_email": "user@example.com",
                                                                                                "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "organization_name": "CloudFlare, Inc.",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ],
                                                                                                "invited_by": "user@example.com",
                                                                                                "invited_on": "2014-01-01T05:20:00Z",
                                                                                                "expires_on": "2014-01-01T05:20:00Z",
                                                                                                "status": "accepted"
                                                                                              }
                                                                                            ],
                                                                                            "roles": [
                                                                                              {
                                                                                                "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                "name": "Organization Admin",
                                                                                                "description": "Administrative access to the entire Organization",
                                                                                                "permissions": [
                                                                                                  "#zones:read"
                                                                                                ]
                                                                                              }
                                                                                            ]
                                                                                          }
                                                                                        }

                                                                                        Organization Members

                                                                                        A member is the association of a CloudFlare user with an Organization.

                                                                                        Object definition

                                                                                        View properties and constraints defined on the object

                                                                                        Show definition

                                                                                        GET List members permission needed: #organization:read
                                                                                        • free
                                                                                        • pro
                                                                                        • business
                                                                                        • enterprise

                                                                                        List all members of a organization

                                                                                        GET /organizations/:organization_identifier/members
                                                                                        cURL (example)
                                                                                        curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/members" \
                                                                                             -H "X-Auth-Email: user@example.com" \
                                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                             -H "Content-Type: application/json"
                                                                                        Response (example)
                                                                                        {
                                                                                          "success": true,
                                                                                          "errors": [],
                                                                                          "messages": [],
                                                                                          "result": [
                                                                                            {
                                                                                              "id": "7c5dae5552338874e5053f2534d2767a",
                                                                                              "name": "John Smith",
                                                                                              "email": "user@example.com",
                                                                                              "status": "accepted",
                                                                                              "roles": [
                                                                                                {
                                                                                                  "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                  "name": "Organization Admin",
                                                                                                  "description": "Administrative access to the entire Organization",
                                                                                                  "permissions": [
                                                                                                    "#zones:read"
                                                                                                  ]
                                                                                                }
                                                                                              ]
                                                                                            }
                                                                                          ],
                                                                                          "result_info": {
                                                                                            "page": 1,
                                                                                            "per_page": 20,
                                                                                            "count": 1,
                                                                                            "total_count": 2000
                                                                                          }
                                                                                        }

                                                                                        GET Member details permission needed: #organization:read
                                                                                        • free
                                                                                        • pro
                                                                                        • business
                                                                                        • enterprise

                                                                                        Get information about a specific member of an organization

                                                                                        GET /organizations/:organization_identifier/members/:identifier
                                                                                        cURL (example)
                                                                                        curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/members/7c5dae5552338874e5053f2534d2767a" \
                                                                                             -H "X-Auth-Email: user@example.com" \
                                                                                             -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                             -H "Content-Type: application/json"
                                                                                        Response (example)
                                                                                        {
                                                                                          "success": true,
                                                                                          "errors": [],
                                                                                          "messages": [],
                                                                                          "result": {
                                                                                            "id": "7c5dae5552338874e5053f2534d2767a",
                                                                                            "name": "John Smith",
                                                                                            "email": "user@example.com",
                                                                                            "status": "accepted",
                                                                                            "roles": [
                                                                                              {
                                                                                                "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                "name": "Organization Admin",
                                                                                                "description": "Administrative access to the entire Organization",
                                                                                                "permissions": [
                                                                                                  "#zones:read"
                                                                                                ]
                                                                                              }
                                                                                            ]
                                                                                          }
                                                                                        }

                                                                                        PATCH Update member roles permission needed: #organization:edit
                                                                                        • free
                                                                                        • pro
                                                                                        • business
                                                                                        • enterprise

                                                                                        Change the Roles of an Organization's Member

                                                                                        PATCH /organizations/:organization_identifier/members/:identifier

                                                                                        Optional parameters

                                                                                        Name /typeDescription /exampleConstraints
                                                                                        roles
                                                                                        array

                                                                                        Array of Roles associated with this Member

                                                                                        [ "3536bcfad5faccb999b47003c79917fb" ]
                                                                                          cURL (example)
                                                                                          curl -X PATCH "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/members/7c5dae5552338874e5053f2534d2767a" \
                                                                                               -H "X-Auth-Email: user@example.com" \
                                                                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                               -H "Content-Type: application/json" \
                                                                                               --data '{"roles":["3536bcfad5faccb999b47003c79917fb"]}'
                                                                                          Response (example)
                                                                                          {
                                                                                            "success": true,
                                                                                            "errors": [],
                                                                                            "messages": [],
                                                                                            "result": [
                                                                                              {
                                                                                                "id": "7c5dae5552338874e5053f2534d2767a",
                                                                                                "name": "John Smith",
                                                                                                "email": "user@example.com",
                                                                                                "status": "accepted",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ]
                                                                                              }
                                                                                            ],
                                                                                            "result_info": {
                                                                                              "page": 1,
                                                                                              "per_page": 20,
                                                                                              "count": 1,
                                                                                              "total_count": 2000
                                                                                            }
                                                                                          }

                                                                                          DELETE Remove member permission needed: #organization:edit
                                                                                          • free
                                                                                          • pro
                                                                                          • business
                                                                                          • enterprise

                                                                                          Remove a member from an organization

                                                                                          DELETE /organizations/:organization_identifier/members/:identifier
                                                                                          cURL (example)
                                                                                          curl -X DELETE "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/members/7c5dae5552338874e5053f2534d2767a" \
                                                                                               -H "X-Auth-Email: user@example.com" \
                                                                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                               -H "Content-Type: application/json"
                                                                                          Response (example)
                                                                                          {
                                                                                            "id": "7c5dae5552338874e5053f2534d2767a"
                                                                                          }

                                                                                          Organization Invites

                                                                                          Invitations to potential members that this organization has created

                                                                                          Object definition

                                                                                          View properties and constraints defined on the object

                                                                                          Show definition

                                                                                          POST Create invitation permission needed: #organization:edit
                                                                                          • free
                                                                                          • pro
                                                                                          • business
                                                                                          • enterprise

                                                                                          Invite a User to become a Member of an Organization

                                                                                          POST /organizations/:organization_identifier/invites

                                                                                          Required parameters

                                                                                          Name /typeDescription /exampleConstraints
                                                                                          invited_member_email
                                                                                          string

                                                                                          Email address of the user to be added to the Organization

                                                                                          "user@example.com"
                                                                                          • max length: 90
                                                                                          roles
                                                                                          array

                                                                                          Array of Roles associated with the invited user

                                                                                          [ { "id": "5a7805061c76ada191ed06f989cc3dac" }, { "id": "9a7806061c88ada191ed06f989cc3dac" } ]

                                                                                            Optional parameters

                                                                                            Name /typeDescription /exampleConstraints
                                                                                            auto_accept
                                                                                            boolean

                                                                                            When present and set to true, allows for the invited user to be automatically accepted to the organization. No invitation is sent.

                                                                                            true
                                                                                            • valid values: (true,false)
                                                                                            cURL (example)
                                                                                            curl -X POST "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/invites" \
                                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                 -H "Content-Type: application/json" \
                                                                                                 --data '{"invited_member_email":"user@example.com","roles":[{"id":"5a7805061c76ada191ed06f989cc3dac"},{"id":"9a7806061c88ada191ed06f989cc3dac"}],"auto_accept":true}'
                                                                                            Response (example)
                                                                                            {
                                                                                              "success": true,
                                                                                              "errors": [],
                                                                                              "messages": [],
                                                                                              "result": {
                                                                                                "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                                                                                                "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "invited_member_email": "user@example.com",
                                                                                                "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "organization_name": "CloudFlare, Inc.",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ],
                                                                                                "invited_by": "user@example.com",
                                                                                                "invited_on": "2014-01-01T05:20:00Z",
                                                                                                "expires_on": "2014-01-01T05:20:00Z",
                                                                                                "status": "accepted"
                                                                                              }
                                                                                            }

                                                                                            GET List invitations permission needed: #organization:read
                                                                                            • free
                                                                                            • pro
                                                                                            • business
                                                                                            • enterprise

                                                                                            List all invitations associated with an organization

                                                                                            GET /organizations/:organization_identifier/invites
                                                                                            cURL (example)
                                                                                            curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/invites" \
                                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                 -H "Content-Type: application/json"
                                                                                            Response (example)
                                                                                            {
                                                                                              "success": true,
                                                                                              "errors": [],
                                                                                              "messages": [],
                                                                                              "result": [
                                                                                                {
                                                                                                  "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                                                                                                  "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                  "invited_member_email": "user@example.com",
                                                                                                  "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                  "organization_name": "CloudFlare, Inc.",
                                                                                                  "roles": [
                                                                                                    {
                                                                                                      "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                      "name": "Organization Admin",
                                                                                                      "description": "Administrative access to the entire Organization",
                                                                                                      "permissions": [
                                                                                                        "#zones:read"
                                                                                                      ]
                                                                                                    }
                                                                                                  ],
                                                                                                  "invited_by": "user@example.com",
                                                                                                  "invited_on": "2014-01-01T05:20:00Z",
                                                                                                  "expires_on": "2014-01-01T05:20:00Z",
                                                                                                  "status": "accepted"
                                                                                                }
                                                                                              ],
                                                                                              "result_info": {
                                                                                                "page": 1,
                                                                                                "per_page": 20,
                                                                                                "count": 1,
                                                                                                "total_count": 2000
                                                                                              }
                                                                                            }

                                                                                            GET Invitation details permission needed: #organization:read
                                                                                            • free
                                                                                            • pro
                                                                                            • business
                                                                                            • enterprise

                                                                                            Get the details of an invitation

                                                                                            GET /organizations/:organization_identifier/invites/:identifier
                                                                                            cURL (example)
                                                                                            curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/invites/4f5f0c14a2a41d5063dd301b2f829f04" \
                                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                 -H "Content-Type: application/json"
                                                                                            Response (example)
                                                                                            {
                                                                                              "success": true,
                                                                                              "errors": [],
                                                                                              "messages": [],
                                                                                              "result": {
                                                                                                "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                                                                                                "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "invited_member_email": "user@example.com",
                                                                                                "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                "organization_name": "CloudFlare, Inc.",
                                                                                                "roles": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ],
                                                                                                "invited_by": "user@example.com",
                                                                                                "invited_on": "2014-01-01T05:20:00Z",
                                                                                                "expires_on": "2014-01-01T05:20:00Z",
                                                                                                "status": "accepted"
                                                                                              }
                                                                                            }

                                                                                            PATCH Update invitation roles permission needed: #organization:edit
                                                                                            • free
                                                                                            • pro
                                                                                            • business
                                                                                            • enterprise

                                                                                            Change the Roles of a Pending Invite

                                                                                            PATCH /organizations/:organization_identifier/invite/:identifier

                                                                                            Optional parameters

                                                                                            Name /typeDescription /exampleConstraints
                                                                                            roles
                                                                                            array

                                                                                            Array of Roles associated with the invited user

                                                                                            [ "3536bcfad5faccb999b47003c79917fb" ]
                                                                                              cURL (example)
                                                                                              curl -X PATCH "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/invite/4f5f0c14a2a41d5063dd301b2f829f04" \
                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                   -H "Content-Type: application/json" \
                                                                                                   --data '{"roles":["3536bcfad5faccb999b47003c79917fb"]}'
                                                                                              Response (example)
                                                                                              {
                                                                                                "success": true,
                                                                                                "errors": [],
                                                                                                "messages": [],
                                                                                                "result": {
                                                                                                  "id": "4f5f0c14a2a41d5063dd301b2f829f04",
                                                                                                  "invited_member_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                  "invited_member_email": "user@example.com",
                                                                                                  "organization_id": "5a7805061c76ada191ed06f989cc3dac",
                                                                                                  "organization_name": "CloudFlare, Inc.",
                                                                                                  "roles": [
                                                                                                    {
                                                                                                      "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                      "name": "Organization Admin",
                                                                                                      "description": "Administrative access to the entire Organization",
                                                                                                      "permissions": [
                                                                                                        "#zones:read"
                                                                                                      ]
                                                                                                    }
                                                                                                  ],
                                                                                                  "invited_by": "user@example.com",
                                                                                                  "invited_on": "2014-01-01T05:20:00Z",
                                                                                                  "expires_on": "2014-01-01T05:20:00Z",
                                                                                                  "status": "accepted"
                                                                                                }
                                                                                              }

                                                                                              DELETE Cancel Invitation permission needed: #organization:edit
                                                                                              • free
                                                                                              • pro
                                                                                              • business
                                                                                              • enterprise

                                                                                              Cancel an existing invitation

                                                                                              DELETE /organizations/:organization_identifier/invites/:identifier
                                                                                              cURL (example)
                                                                                              curl -X DELETE "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/invites/4f5f0c14a2a41d5063dd301b2f829f04" \
                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                   -H "Content-Type: application/json"
                                                                                              Response (example)
                                                                                              {
                                                                                                "id": "4f5f0c14a2a41d5063dd301b2f829f04"
                                                                                              }

                                                                                              Organization Roles

                                                                                              A role defines what permissions a Member of an Organization has.

                                                                                              Object definition

                                                                                              View properties and constraints defined on the object

                                                                                              Show definition

                                                                                              GET List roles permission needed: #organization:read
                                                                                              • free
                                                                                              • pro
                                                                                              • business
                                                                                              • enterprise

                                                                                              Get all available roles for an organization

                                                                                              GET /organizations/:organization_identifier/roles
                                                                                              cURL (example)
                                                                                              curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/roles" \
                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                   -H "Content-Type: application/json"
                                                                                              Response (example)
                                                                                              {
                                                                                                "success": true,
                                                                                                "errors": [],
                                                                                                "messages": [],
                                                                                                "result": [
                                                                                                  {
                                                                                                    "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                    "name": "Organization Admin",
                                                                                                    "description": "Administrative access to the entire Organization",
                                                                                                    "permissions": [
                                                                                                      "#zones:read"
                                                                                                    ]
                                                                                                  }
                                                                                                ],
                                                                                                "result_info": {
                                                                                                  "page": 1,
                                                                                                  "per_page": 20,
                                                                                                  "count": 1,
                                                                                                  "total_count": 2000
                                                                                                }
                                                                                              }

                                                                                              GET Role details permission needed: #organization:read
                                                                                              • free
                                                                                              • pro
                                                                                              • business
                                                                                              • enterprise

                                                                                              Get information about a specific role for an organization

                                                                                              GET /organizations/:organization_identifier/roles/:identifier
                                                                                              cURL (example)
                                                                                              curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/roles/3536bcfad5faccb999b47003c79917fb" \
                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                   -H "Content-Type: application/json"
                                                                                              Response (example)
                                                                                              {
                                                                                                "success": true,
                                                                                                "errors": [],
                                                                                                "messages": [],
                                                                                                "result": {
                                                                                                  "id": "3536bcfad5faccb999b47003c79917fb",
                                                                                                  "name": "Organization Admin",
                                                                                                  "description": "Administrative access to the entire Organization",
                                                                                                  "permissions": [
                                                                                                    "#zones:read"
                                                                                                  ]
                                                                                                }
                                                                                              }

                                                                                              Organization-level Firewall access rule

                                                                                              A firewall access rule applied to all zones owned by the organization

                                                                                              Object definition

                                                                                              View properties and constraints defined on the object

                                                                                              Show definition

                                                                                              GET List access rules
                                                                                              • free
                                                                                              • pro
                                                                                              • business
                                                                                              • enterprise

                                                                                              Search, sort, and filter IP/country access rules

                                                                                              GET /organizations/:organization_id/firewall/access_rules/rules

                                                                                              Optional parameters

                                                                                              Name /typeDescription /exampleConstraints
                                                                                              mode
                                                                                              string

                                                                                              The action to apply to a matched request

                                                                                              "challenge"
                                                                                              • valid values: block, challenge, whitelist
                                                                                              configuration_target
                                                                                              string

                                                                                              The rule configuration target

                                                                                              "ip"
                                                                                              • valid values: ip, ip_range, country
                                                                                              configuration_value
                                                                                              string

                                                                                              Search by IP, range, or country code

                                                                                              "1.2.3.4"
                                                                                              • notes: IP is a single IPv4 address. IP range has a subnet of /16 or /24. Country code is an ISO 2-letter country code.
                                                                                              page
                                                                                              number

                                                                                              Page number of paginated results

                                                                                              1
                                                                                              • default value: 1
                                                                                              • min value: 1
                                                                                              per_page
                                                                                              number

                                                                                              Number of rules per page

                                                                                              50
                                                                                              • default value: 50
                                                                                              • min value: 5
                                                                                              • max value: 100
                                                                                              order
                                                                                              string

                                                                                              Field to order rules by

                                                                                              "mode"
                                                                                              • valid values: configuration_target, configuration_value, mode
                                                                                              direction
                                                                                              string

                                                                                              Direction to order rules

                                                                                              "desc"
                                                                                              • valid values: asc, desc
                                                                                              match
                                                                                              string

                                                                                              Whether to match all search requirements or at least one (any)

                                                                                              "all"
                                                                                              • default value: all
                                                                                              • valid values: any, all
                                                                                              cURL (example)
                                                                                              curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/firewall/access_rules/rules?mode=challenge&configuration_target=ip&configuration_value=1.2.3.4&page=1&per_page=50&order=mode&direction=desc&match=all" \
                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                   -H "Content-Type: application/json"
                                                                                              Response (example)
                                                                                              {
                                                                                                "success": true,
                                                                                                "errors": [],
                                                                                                "messages": [],
                                                                                                "result": [
                                                                                                  {
                                                                                                    "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                                                                                                    "notes": "This rule is on because of an event that occured on date X",
                                                                                                    "allowed_modes": [
                                                                                                      "whitelist",
                                                                                                      "block",
                                                                                                      "challenge"
                                                                                                    ],
                                                                                                    "mode": "challenge",
                                                                                                    "configuration": {
                                                                                                      "target": "ip",
                                                                                                      "value": "1.2.3.4"
                                                                                                    },
                                                                                                    "scope": {
                                                                                                      "id": "01a7362d577a6c3019a474fd6f485823",
                                                                                                      "name": "CloudFlare, Inc.",
                                                                                                      "type": "organization"
                                                                                                    },
                                                                                                    "created_on": "2014-01-01T05:20:00.12345Z",
                                                                                                    "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                  }
                                                                                                ],
                                                                                                "result_info": {
                                                                                                  "page": 1,
                                                                                                  "per_page": 20,
                                                                                                  "count": 1,
                                                                                                  "total_count": 2000
                                                                                                }
                                                                                              }

                                                                                              POST Create access rule
                                                                                              • free
                                                                                              • pro
                                                                                              • business
                                                                                              • enterprise

                                                                                              Make a new IP, IP range, or country access rule for all zones owned by the organization. Note: If you would like to create an access rule that applies to a specific zone only, use the zone firewall endpoints.

                                                                                              POST /organizations/:organization_id/firewall/access_rules/rules

                                                                                              Required parameters

                                                                                              Name /typeDescription /exampleConstraints
                                                                                              mode
                                                                                              string

                                                                                              The action to apply to a matched request

                                                                                              "challenge"
                                                                                              • valid values: block, challenge, whitelist
                                                                                              configuration
                                                                                              object

                                                                                              Rule configuration

                                                                                              { "target": "ip", "value": "1.2.3.4" }
                                                                                              One of the following:

                                                                                                Optional parameters

                                                                                                Name /typeDescription /exampleConstraints
                                                                                                notes
                                                                                                string

                                                                                                A personal note about the rule. Typically used as a reminder or explanation for the rule.

                                                                                                "This rule is on because of an event that occured on date X"
                                                                                                  cURL (example)
                                                                                                  curl -X POST "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/firewall/access_rules/rules" \
                                                                                                       -H "X-Auth-Email: user@example.com" \
                                                                                                       -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                       -H "Content-Type: application/json" \
                                                                                                       --data '{"mode":"challenge","configuration":{"target":"ip","value":"1.2.3.4"},"notes":"This rule is on because of an event that occured on date X"}'
                                                                                                  Response (example)
                                                                                                  {
                                                                                                    "success": true,
                                                                                                    "errors": [],
                                                                                                    "messages": [],
                                                                                                    "result": {
                                                                                                      "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                                                                                                      "notes": "This rule is on because of an event that occured on date X",
                                                                                                      "allowed_modes": [
                                                                                                        "whitelist",
                                                                                                        "block",
                                                                                                        "challenge"
                                                                                                      ],
                                                                                                      "mode": "challenge",
                                                                                                      "configuration": {
                                                                                                        "target": "ip",
                                                                                                        "value": "1.2.3.4"
                                                                                                      },
                                                                                                      "scope": {
                                                                                                        "id": "01a7362d577a6c3019a474fd6f485823",
                                                                                                        "name": "CloudFlare, Inc.",
                                                                                                        "type": "organization"
                                                                                                      },
                                                                                                      "created_on": "2014-01-01T05:20:00.12345Z",
                                                                                                      "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                    }
                                                                                                  }

                                                                                                  PATCH Update access rule
                                                                                                  • free
                                                                                                  • pro
                                                                                                  • business
                                                                                                  • enterprise

                                                                                                  Update rule state and/or configuration. This will be applied across all zones owned by the organization.

                                                                                                  PATCH /organizations/:organization_id/firewall/access_rules/rules/:identifier

                                                                                                  Optional parameters

                                                                                                  Name /typeDescription /exampleConstraints
                                                                                                  mode
                                                                                                  string

                                                                                                  The action to apply to a matched request

                                                                                                  "challenge"
                                                                                                  • valid values: block, challenge, whitelist
                                                                                                  configuration
                                                                                                  object

                                                                                                  Rule configuration

                                                                                                  { "target": "ip", "value": "1.2.3.4" }
                                                                                                  One of the following:
                                                                                                    notes
                                                                                                    string

                                                                                                    A personal note about the rule. Typically used as a reminder or explanation for the rule.

                                                                                                    "This rule is on because of an event that occured on date X"
                                                                                                      cURL (example)
                                                                                                      curl -X PATCH "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/firewall/access_rules/rules/92f17202ed8bd63d69a66b86a49a8f6b" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json" \
                                                                                                           --data '{"mode":"challenge","configuration":{"target":"ip","value":"1.2.3.4"},"notes":"This rule is on because of an event that occured on date X"}'
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": {
                                                                                                          "id": "92f17202ed8bd63d69a66b86a49a8f6b",
                                                                                                          "notes": "This rule is on because of an event that occured on date X",
                                                                                                          "allowed_modes": [
                                                                                                            "whitelist",
                                                                                                            "block",
                                                                                                            "challenge"
                                                                                                          ],
                                                                                                          "mode": "challenge",
                                                                                                          "configuration": {
                                                                                                            "target": "ip",
                                                                                                            "value": "1.2.3.4"
                                                                                                          },
                                                                                                          "scope": {
                                                                                                            "id": "01a7362d577a6c3019a474fd6f485823",
                                                                                                            "name": "CloudFlare, Inc.",
                                                                                                            "type": "organization"
                                                                                                          },
                                                                                                          "created_on": "2014-01-01T05:20:00.12345Z",
                                                                                                          "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                        }
                                                                                                      }

                                                                                                      DELETE Delete access rule
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      Remove an access rule so it is no longer evaluated during requests. This will apply to all zones owned by the organization

                                                                                                      DELETE /organizations/:organization_id/firewall/access_rules/rules/:identifier
                                                                                                      cURL (example)
                                                                                                      curl -X DELETE "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/firewall/access_rules/rules/92f17202ed8bd63d69a66b86a49a8f6b" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json"
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": {
                                                                                                          "id": "92f17202ed8bd63d69a66b86a49a8f6b"
                                                                                                        }
                                                                                                      }

                                                                                                      Organization Railgun

                                                                                                      CloudFlare Railgun for Organizations

                                                                                                      Object definition

                                                                                                      View properties and constraints defined on the object

                                                                                                      Show definition

                                                                                                      POST Create Railgun
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      POST /organizations/:organization_identifier/railguns

                                                                                                      Required parameters

                                                                                                      Name /typeDescription /exampleConstraints
                                                                                                      name
                                                                                                      string

                                                                                                      Readable identifier of the railgun

                                                                                                      "My Railgun"
                                                                                                      • max length: 160
                                                                                                      cURL (example)
                                                                                                      curl -X POST "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/railguns" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json" \
                                                                                                           --data '{"name":"My Railgun"}'
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": {
                                                                                                          "id": "e928d310693a83094309acf9ead50448",
                                                                                                          "name": "My Railgun",
                                                                                                          "status": "active",
                                                                                                          "enabled": true,
                                                                                                          "zones_connected": 2,
                                                                                                          "build": "b1234",
                                                                                                          "version": "2.1",
                                                                                                          "revision": "123",
                                                                                                          "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                                                                                          "activated_on": "2014-01-02T02:20:00Z",
                                                                                                          "created_on": "2014-01-01T05:20:00Z",
                                                                                                          "modified_on": "2014-01-01T05:20:00Z"
                                                                                                        }
                                                                                                      }

                                                                                                      GET List Railguns
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      List, search, sort and filter your Railguns

                                                                                                      GET /organizations/:organization_identifier/railguns

                                                                                                      Optional parameters

                                                                                                      Name /typeDescription /exampleConstraints
                                                                                                      page
                                                                                                      number

                                                                                                      Page number of paginated results

                                                                                                      1
                                                                                                      • default value: 1
                                                                                                      • min value: 1
                                                                                                      per_page
                                                                                                      number

                                                                                                      Number of items per page

                                                                                                      20
                                                                                                      • default value: 20
                                                                                                      • min value: 5
                                                                                                      • max value: 50
                                                                                                      direction
                                                                                                      string

                                                                                                      Direction to order Railguns

                                                                                                      "desc"
                                                                                                      • valid values: asc, desc
                                                                                                      cURL (example)
                                                                                                      curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/railguns?page=1&per_page=20&direction=desc" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json"
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": [
                                                                                                          {
                                                                                                            "id": "e928d310693a83094309acf9ead50448",
                                                                                                            "name": "My Railgun",
                                                                                                            "status": "active",
                                                                                                            "enabled": true,
                                                                                                            "zones_connected": 2,
                                                                                                            "build": "b1234",
                                                                                                            "version": "2.1",
                                                                                                            "revision": "123",
                                                                                                            "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                                                                                            "activated_on": "2014-01-02T02:20:00Z",
                                                                                                            "created_on": "2014-01-01T05:20:00Z",
                                                                                                            "modified_on": "2014-01-01T05:20:00Z"
                                                                                                          }
                                                                                                        ],
                                                                                                        "result_info": {
                                                                                                          "page": 1,
                                                                                                          "per_page": 20,
                                                                                                          "count": 1,
                                                                                                          "total_count": 2000
                                                                                                        }
                                                                                                      }

                                                                                                      GET Railgun details
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      GET /organizations/:organization_identifier/railguns/:identifier
                                                                                                      cURL (example)
                                                                                                      curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/railguns/e928d310693a83094309acf9ead50448" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json"
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": {
                                                                                                          "id": "e928d310693a83094309acf9ead50448",
                                                                                                          "name": "My Railgun",
                                                                                                          "status": "active",
                                                                                                          "enabled": true,
                                                                                                          "zones_connected": 2,
                                                                                                          "build": "b1234",
                                                                                                          "version": "2.1",
                                                                                                          "revision": "123",
                                                                                                          "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                                                                                          "activated_on": "2014-01-02T02:20:00Z",
                                                                                                          "created_on": "2014-01-01T05:20:00Z",
                                                                                                          "modified_on": "2014-01-01T05:20:00Z"
                                                                                                        }
                                                                                                      }

                                                                                                      GET Get zones connected to a Railgun
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      The zones that are currently using this Railgun

                                                                                                      GET /organizations/:organization_identifier/railguns/:identifier/zones
                                                                                                      cURL (example)
                                                                                                      curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/railguns/e928d310693a83094309acf9ead50448/zones" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json"
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": [
                                                                                                          {
                                                                                                            "id": "023e105f4ecef8ad9ca31a8372d0c353",
                                                                                                            "name": "example.com",
                                                                                                            "development_mode": 7200,
                                                                                                            "original_name_servers": [
                                                                                                              "ns1.originaldnshost.com",
                                                                                                              "ns2.originaldnshost.com"
                                                                                                            ],
                                                                                                            "original_registrar": "GoDaddy",
                                                                                                            "original_dnshost": "NameCheap",
                                                                                                            "created_on": "2014-01-01T05:20:00.12345Z",
                                                                                                            "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                          }
                                                                                                        ],
                                                                                                        "result_info": {
                                                                                                          "page": 1,
                                                                                                          "per_page": 20,
                                                                                                          "count": 1,
                                                                                                          "total_count": 2000
                                                                                                        }
                                                                                                      }

                                                                                                      PATCH Enable or disable a Railgun
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      Enable or disable a Railgun for all zones connected to it

                                                                                                      PATCH /organizations/:organization_identifier/railguns/:identifier

                                                                                                      Required parameters

                                                                                                      Name /typeDescription /exampleConstraints
                                                                                                      enabled
                                                                                                      boolean

                                                                                                      Flag to determine if the Railgun is accepting connections

                                                                                                      true
                                                                                                      • valid values: (true,false)
                                                                                                      cURL (example)
                                                                                                      curl -X PATCH "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/railguns/e928d310693a83094309acf9ead50448" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json" \
                                                                                                           --data '{"enabled":true}'
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": {
                                                                                                          "id": "e928d310693a83094309acf9ead50448",
                                                                                                          "name": "My Railgun",
                                                                                                          "status": "active",
                                                                                                          "enabled": true,
                                                                                                          "zones_connected": 2,
                                                                                                          "build": "b1234",
                                                                                                          "version": "2.1",
                                                                                                          "revision": "123",
                                                                                                          "activation_key": "e4edc00281cb56ebac22c81be9bac8f3",
                                                                                                          "activated_on": "2014-01-02T02:20:00Z",
                                                                                                          "created_on": "2014-01-01T05:20:00Z",
                                                                                                          "modified_on": "2014-01-01T05:20:00Z"
                                                                                                        }
                                                                                                      }

                                                                                                      DELETE Delete Railgun
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      Disable and delete a Railgun. This will immediately disable the Railgun for any connected zones

                                                                                                      DELETE /organizations/:organization_identifier/railguns/:identifier
                                                                                                      cURL (example)
                                                                                                      curl -X DELETE "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/railguns/e928d310693a83094309acf9ead50448" \
                                                                                                           -H "X-Auth-Email: user@example.com" \
                                                                                                           -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                           -H "Content-Type: application/json"
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": {
                                                                                                          "id": "e928d310693a83094309acf9ead50448"
                                                                                                        }
                                                                                                      }

                                                                                                      CloudFlare CA

                                                                                                      API to create CloudFlare-issued SSL certificates that can be installed on your origin server. Use your Certificates API Key as your User Service Key when calling these endpoints (see the section on request headers for details).

                                                                                                      Object definition

                                                                                                      View properties and constraints defined on the object

                                                                                                      Show definition

                                                                                                      GET List Certificates
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      List all existing CloudFlare-issued Certificates for a given zone. Use your Certificates API Key as your User Service Key when calling this endpoint (see above).

                                                                                                      GET /certificates
                                                                                                      cURL (example)
                                                                                                      curl -X GET "https://api.cloudflare.com/client/v4/certificates" \
                                                                                                           -H "X-Auth-User-Service-Key: v1.0-e24fd090c02efcfecb4de8f4ff246fd5c75b48946fdf0ce26c59f91d0d90797b-cfa33fe60e8e34073c149323454383fc9005d25c9b4c502c2f063457ef65322eade065975001a0b4b4c591c5e1bd36a6e8f7e2d4fa8a9ec01c64c041e99530c2-07b9efe0acd78c82c8d9c690aacb8656d81c369246d7f996a205fe3c18e9254a"
                                                                                                      Response (example)
                                                                                                      {
                                                                                                        "success": true,
                                                                                                        "errors": [],
                                                                                                        "messages": [],
                                                                                                        "result": [
                                                                                                          {
                                                                                                            "id": "3664634374038615934",
                                                                                                            "certificate": "-----BEGIN CERTIFICATE-----\nMIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBFV0YWgxDzANBgNV\nBAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln\naUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo\nwp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c\n1Po2EmvBz+AD5sBdT5kzGQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI\nWDuwq4C9f+YkeJhNn9dF5+owm8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ\nwIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR\nBPZL8DAeWuA8ebudVT44yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ\nKoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D\nhJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY\nQ4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/\nZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn\n29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2\n97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=\n-----END CERTIFICATE-----",
                                                                                                            "hostnames": [
                                                                                                              "example.com",
                                                                                                              "*.example.com"
                                                                                                            ],
                                                                                                            "expires_on": "2014-01-01T05:20:00.12345Z",
                                                                                                            "request_type": "origin-rsa",
                                                                                                            "requested_validity": 5475,
                                                                                                            "csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\nY28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\nHu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\nN8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\ng7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\nuOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\nCSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\ncGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\npTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\nauRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\nyc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\nhXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\ndcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n-----END CERTIFICATE REQUEST-----"
                                                                                                          }
                                                                                                        ],
                                                                                                        "result_info": {
                                                                                                          "page": 1,
                                                                                                          "per_page": 20,
                                                                                                          "count": 1,
                                                                                                          "total_count": 2000
                                                                                                        }
                                                                                                      }

                                                                                                      POST Create Certificate
                                                                                                      • free
                                                                                                      • pro
                                                                                                      • business
                                                                                                      • enterprise

                                                                                                      Create a CloudFlare-signed certificate. Use your Certificates API Key as your User Service Key when calling this endpoint (see above).

                                                                                                      POST /certificates

                                                                                                      Optional parameters

                                                                                                      Name /typeDescription /exampleConstraints
                                                                                                      hostnames
                                                                                                      array

                                                                                                      Array of hostnames or wildcard names (e.g., *.example.com) bound to the certificate

                                                                                                      [ "example.com", "*.example.com" ]
                                                                                                        requested_validity
                                                                                                        number

                                                                                                        The number of days for which the certificate should be valid

                                                                                                        5475
                                                                                                        • default value: 5475
                                                                                                        • valid values: 7, 30, 90, 365, 730, 1095, 5475
                                                                                                        request_type
                                                                                                        string

                                                                                                        Signature type desired on certificate ("origin-rsa" (rsa), "origin-ecc" (ecdsa), or "keyless-certificate" (for Keyless SSL servers)

                                                                                                        "origin-rsa"
                                                                                                        • valid values: origin-rsa, origin-ecc, keyless-certificate
                                                                                                        csr
                                                                                                        text

                                                                                                        The Certificate Signing Request (CSR). Must be newline-encoded.

                                                                                                        "-----BEGIN CERTIFICATE REQUEST-----\nMIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\nY28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\nHu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\nN8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\ng7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\nuOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\nCSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\ncGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\npTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\nauRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\nyc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\nhXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\ndcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n-----END CERTIFICATE REQUEST-----"
                                                                                                          cURL (example)
                                                                                                          curl -X POST "https://api.cloudflare.com/client/v4/certificates" \
                                                                                                               -H "X-Auth-User-Service-Key: v1.0-e24fd090c02efcfecb4de8f4ff246fd5c75b48946fdf0ce26c59f91d0d90797b-cfa33fe60e8e34073c149323454383fc9005d25c9b4c502c2f063457ef65322eade065975001a0b4b4c591c5e1bd36a6e8f7e2d4fa8a9ec01c64c041e99530c2-07b9efe0acd78c82c8d9c690aacb8656d81c369246d7f996a205fe3c18e9254a" \
                                                                                                               --data '{"hostnames":["example.com","*.example.com"],"requested_validity":5475,"request_type":"origin-rsa","csr":"-----BEGIN CERTIFICATE REQUEST-----\nMIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\nY28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\nHu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\nN8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\ng7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\nuOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\nCSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\ncGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\npTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\nauRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\nyc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\nhXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\ndcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n-----END CERTIFICATE REQUEST-----"}'
                                                                                                          Response (example)
                                                                                                          {
                                                                                                            "success": true,
                                                                                                            "errors": [],
                                                                                                            "messages": [],
                                                                                                            "result": {
                                                                                                              "id": "3664634374038615934",
                                                                                                              "certificate": "-----BEGIN CERTIFICATE-----\nMIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBFV0YWgxDzANBgNV\nBAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln\naUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo\nwp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c\n1Po2EmvBz+AD5sBdT5kzGQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI\nWDuwq4C9f+YkeJhNn9dF5+owm8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ\nwIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR\nBPZL8DAeWuA8ebudVT44yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ\nKoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D\nhJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY\nQ4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/\nZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn\n29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2\n97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=\n-----END CERTIFICATE-----",
                                                                                                              "hostnames": [
                                                                                                                "example.com",
                                                                                                                "*.example.com"
                                                                                                              ],
                                                                                                              "expires_on": "2014-01-01T05:20:00.12345Z",
                                                                                                              "request_type": "origin-rsa",
                                                                                                              "requested_validity": 5475,
                                                                                                              "csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\nY28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\nHu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\nN8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\ng7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\nuOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\nCSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\ncGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\npTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\nauRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\nyc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\nhXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\ndcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n-----END CERTIFICATE REQUEST-----"
                                                                                                            }
                                                                                                          }

                                                                                                          GET Certificate Details
                                                                                                          • free
                                                                                                          • pro
                                                                                                          • business
                                                                                                          • enterprise

                                                                                                          Get an existing certificate by its serial number. Use your Certificates API Key as your User Service Key when calling this endpoint (see above).

                                                                                                          GET /certificates/:identifier
                                                                                                          cURL (example)
                                                                                                          curl -X GET "https://api.cloudflare.com/client/v4/certificates/3664634374038615934?" \
                                                                                                               -H "X-Auth-User-Service-Key: v1.0-e24fd090c02efcfecb4de8f4ff246fd5c75b48946fdf0ce26c59f91d0d90797b-cfa33fe60e8e34073c149323454383fc9005d25c9b4c502c2f063457ef65322eade065975001a0b4b4c591c5e1bd36a6e8f7e2d4fa8a9ec01c64c041e99530c2-07b9efe0acd78c82c8d9c690aacb8656d81c369246d7f996a205fe3c18e9254a"
                                                                                                          Response (example)
                                                                                                          {
                                                                                                            "success": true,
                                                                                                            "errors": [],
                                                                                                            "messages": [],
                                                                                                            "result": {
                                                                                                              "id": "3664634374038615934",
                                                                                                              "certificate": "-----BEGIN CERTIFICATE-----\nMIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBFV0YWgxDzANBgNV\nBAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln\naUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo\nwp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c\n1Po2EmvBz+AD5sBdT5kzGQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI\nWDuwq4C9f+YkeJhNn9dF5+owm8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ\nwIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR\nBPZL8DAeWuA8ebudVT44yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ\nKoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D\nhJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY\nQ4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/\nZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn\n29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2\n97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=\n-----END CERTIFICATE-----",
                                                                                                              "hostnames": [
                                                                                                                "example.com",
                                                                                                                "*.example.com"
                                                                                                              ],
                                                                                                              "expires_on": "2014-01-01T05:20:00.12345Z",
                                                                                                              "request_type": "origin-rsa",
                                                                                                              "requested_validity": 5475,
                                                                                                              "csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\nY28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\nHu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\nN8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\ng7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\nuOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\nCSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\ncGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\npTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\nauRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\nyc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\nhXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\ndcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n-----END CERTIFICATE REQUEST-----"
                                                                                                            }
                                                                                                          }

                                                                                                          DELETE Revoke certificate
                                                                                                          • free
                                                                                                          • pro
                                                                                                          • business
                                                                                                          • enterprise

                                                                                                          Revoke a created certificate for a zone. Use your Certificates API Key as your User Service Key when calling this endpoint (see above).

                                                                                                          DELETE /certificates/:identifier
                                                                                                          cURL (example)
                                                                                                          curl -X DELETE "https://api.cloudflare.com/client/v4/certificates/3664634374038615934" \
                                                                                                               -H "X-Auth-User-Service-Key: v1.0-e24fd090c02efcfecb4de8f4ff246fd5c75b48946fdf0ce26c59f91d0d90797b-cfa33fe60e8e34073c149323454383fc9005d25c9b4c502c2f063457ef65322eade065975001a0b4b4c591c5e1bd36a6e8f7e2d4fa8a9ec01c64c041e99530c2-07b9efe0acd78c82c8d9c690aacb8656d81c369246d7f996a205fe3c18e9254a"
                                                                                                          Response (example)
                                                                                                          {
                                                                                                            "success": true,
                                                                                                            "errors": [],
                                                                                                            "messages": [],
                                                                                                            "result": {
                                                                                                              "id": "3664634374038615934"
                                                                                                            }
                                                                                                          }

                                                                                                          CloudFlare CA error codes

                                                                                                          CodeDescription
                                                                                                          1100Failed to write certificate to database
                                                                                                          1001Request had no Authorization header
                                                                                                          1012Please provide a zone id when requesting a stored certificate, or fetch by serial number
                                                                                                          1101Failed to read certificate from database
                                                                                                          1002Unsupported request_type
                                                                                                          1013Please provide a certificate serial number when operating on a single certificate
                                                                                                          1200API Error: Failed to generate CA request
                                                                                                          1003Failed to read contents of HTTP request
                                                                                                          1014Certificate already revoked
                                                                                                          1300Failed to fetch keyless servers from API
                                                                                                          1201CA signing failure. Could not parse returned certificate
                                                                                                          1004Failed to parse request JSON
                                                                                                          1301key server didn't activate correctly
                                                                                                          1005Too many hostnames requested - you may only request up to 100 per certificate
                                                                                                          1302Could not get keyless server port for server <server>
                                                                                                          1006One or more hostnames were duplicated in the request and have been removed prior to certificate generation
                                                                                                          1303invalid hostname: <hostname>
                                                                                                          1007CSR parsed as empty
                                                                                                          1008Error creating request to CA
                                                                                                          1009Permitted values for the 'requested_validity' parameter (specified in days) are: 7, 30, 90, 365, 730, 1095, and 5475 (default)
                                                                                                          1010Failed to validate SAN <hostname>: <reason for failure>
                                                                                                          1000API errors encountered
                                                                                                          1011Failed to parse CSR

                                                                                                          Virtual DNS (Users)

                                                                                                          User-level Virtual DNS Management

                                                                                                          Object definition

                                                                                                          View properties and constraints defined on the object

                                                                                                          Show definition

                                                                                                          GET Get Virtual DNS Clusters
                                                                                                          • free
                                                                                                          • pro
                                                                                                          • business
                                                                                                          • enterprise

                                                                                                          List configured Virtual DNS clusters for a user

                                                                                                          GET /user/virtual_dns
                                                                                                          cURL (example)
                                                                                                          curl -X GET "https://api.cloudflare.com/client/v4/user/virtual_dns" \
                                                                                                               -H "X-Auth-Email: user@example.com" \
                                                                                                               -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                               -H "Content-Type: application/json"
                                                                                                          Response (example)
                                                                                                          {
                                                                                                            "success": true,
                                                                                                            "errors": [],
                                                                                                            "messages": [],
                                                                                                            "result": [
                                                                                                              {
                                                                                                                "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                                                                "name": "My Awesome Virtual DNS cluster",
                                                                                                                "origin_ips": [
                                                                                                                  "1.1.1.1",
                                                                                                                  "2.2.2.2",
                                                                                                                  "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
                                                                                                                ],
                                                                                                                "virtual_dns_ips": [
                                                                                                                  "3.3.3.3",
                                                                                                                  "4.4.4.4",
                                                                                                                  "2400:cb00:2048:1::8d65:79ea",
                                                                                                                  "2400:cb00:2048:1::8d65:79e9"
                                                                                                                ],
                                                                                                                "minimum_cache_ttl": 60,
                                                                                                                "maximum_cache_ttl": 900,
                                                                                                                "deprecate_any_requests": true,
                                                                                                                "ratelimit": 600,
                                                                                                                "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                              }
                                                                                                            ],
                                                                                                            "result_info": {
                                                                                                              "page": 1,
                                                                                                              "per_page": 20,
                                                                                                              "count": 1,
                                                                                                              "total_count": 2000
                                                                                                            }
                                                                                                          }

                                                                                                          POST Create a Virtual DNS Cluster
                                                                                                          • free
                                                                                                          • pro
                                                                                                          • business
                                                                                                          • enterprise

                                                                                                          Create a configured Virtual DNS Cluster

                                                                                                          POST /user/virtual_dns

                                                                                                          Required parameters

                                                                                                          Name /typeDescription /exampleConstraints
                                                                                                          name
                                                                                                          string

                                                                                                          Virtual DNS Cluster Name

                                                                                                          "My Awesome Virtual DNS cluster"
                                                                                                          • max length: 160
                                                                                                          origin_ips
                                                                                                          array
                                                                                                          [ "1.1.1.1", "2.2.2.2", "2001:0db8:85a3:0000:0000:8a2e:0370:7334" ]

                                                                                                            Optional parameters

                                                                                                            Name /typeDescription /exampleConstraints
                                                                                                            minimum_cache_ttl
                                                                                                            number

                                                                                                            Minimum DNS Cache TTL

                                                                                                            60
                                                                                                            • default value: 60
                                                                                                            • min value: 30
                                                                                                            • max value: 36000
                                                                                                            maximum_cache_ttl
                                                                                                            number

                                                                                                            Maximum DNS Cache TTL

                                                                                                            900
                                                                                                            • default value: 900
                                                                                                            • min value: 30
                                                                                                            • max value: 36000
                                                                                                            deprecate_any_request
                                                                                                            boolean

                                                                                                            Deprecate the response to ANY requests

                                                                                                            true
                                                                                                            • valid values: (true,false)
                                                                                                            ratelimit
                                                                                                            number

                                                                                                            Ratelimit in queries per second.

                                                                                                            600
                                                                                                            • min value: 100
                                                                                                            • max value: 100000000
                                                                                                            • notes: A ratelimit of 0 turns off the ratelimit. Otherwise the minimum is 10
                                                                                                            cURL (example)
                                                                                                            curl -X POST "https://api.cloudflare.com/client/v4/user/virtual_dns" \
                                                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                                 -H "Content-Type: application/json" \
                                                                                                                 --data '{"name":"My Awesome Virtual DNS cluster","origin_ips":["1.1.1.1","2.2.2.2","2001:0db8:85a3:0000:0000:8a2e:0370:7334"],"minimum_cache_ttl":60,"maximum_cache_ttl":900,"deprecate_any_request":true,"ratelimit":600}'
                                                                                                            Response (example)
                                                                                                            {
                                                                                                              "success": true,
                                                                                                              "errors": [],
                                                                                                              "messages": [],
                                                                                                              "result": {
                                                                                                                "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                                                                "name": "My Awesome Virtual DNS cluster",
                                                                                                                "origin_ips": [
                                                                                                                  "1.1.1.1",
                                                                                                                  "2.2.2.2",
                                                                                                                  "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
                                                                                                                ],
                                                                                                                "virtual_dns_ips": [
                                                                                                                  "3.3.3.3",
                                                                                                                  "4.4.4.4",
                                                                                                                  "2400:cb00:2048:1::8d65:79ea",
                                                                                                                  "2400:cb00:2048:1::8d65:79e9"
                                                                                                                ],
                                                                                                                "minimum_cache_ttl": 60,
                                                                                                                "maximum_cache_ttl": 900,
                                                                                                                "deprecate_any_requests": true,
                                                                                                                "ratelimit": 600,
                                                                                                                "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                              }
                                                                                                            }

                                                                                                            GET Get a Virtual DNS Cluster
                                                                                                            • free
                                                                                                            • pro
                                                                                                            • business
                                                                                                            • enterprise

                                                                                                            List a single configured Virtual DNS clusters for a user

                                                                                                            GET /user/virtual-dns/:identifier
                                                                                                            cURL (example)
                                                                                                            curl -X GET "https://api.cloudflare.com/client/v4/user/virtual-dns/9a7806061c88ada191ed06f989cc3dac" \
                                                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                                 -H "Content-Type: application/json"
                                                                                                            Response (example)
                                                                                                            {
                                                                                                              "success": true,
                                                                                                              "errors": [],
                                                                                                              "messages": [],
                                                                                                              "result": {
                                                                                                                "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                                                                "name": "My Awesome Virtual DNS cluster",
                                                                                                                "origin_ips": [
                                                                                                                  "1.1.1.1",
                                                                                                                  "2.2.2.2",
                                                                                                                  "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
                                                                                                                ],
                                                                                                                "virtual_dns_ips": [
                                                                                                                  "3.3.3.3",
                                                                                                                  "4.4.4.4",
                                                                                                                  "2400:cb00:2048:1::8d65:79ea",
                                                                                                                  "2400:cb00:2048:1::8d65:79e9"
                                                                                                                ],
                                                                                                                "minimum_cache_ttl": 60,
                                                                                                                "maximum_cache_ttl": 900,
                                                                                                                "deprecate_any_requests": true,
                                                                                                                "ratelimit": 600,
                                                                                                                "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                              }
                                                                                                            }

                                                                                                            DELETE Delete a Virtual DNS Cluster
                                                                                                            • free
                                                                                                            • pro
                                                                                                            • business
                                                                                                            • enterprise

                                                                                                            Delete a configured Virtual DNS Cluster

                                                                                                            DELETE /user/virtual_dns/:identifier
                                                                                                            cURL (example)
                                                                                                            curl -X DELETE "https://api.cloudflare.com/client/v4/user/virtual_dns/9a7806061c88ada191ed06f989cc3dac" \
                                                                                                                 -H "X-Auth-Email: user@example.com" \
                                                                                                                 -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                                 -H "Content-Type: application/json"
                                                                                                            Response (example)
                                                                                                            {
                                                                                                              "success": true,
                                                                                                              "errors": [],
                                                                                                              "messages": [],
                                                                                                              "result": {
                                                                                                                "id": "9a7806061c88ada191ed06f989cc3dac"
                                                                                                              }
                                                                                                            }

                                                                                                            PATCH Modify a Virtual DNS Cluster
                                                                                                            • free
                                                                                                            • pro
                                                                                                            • business
                                                                                                            • enterprise

                                                                                                            Modify a Virtual DNS Cluster configuration

                                                                                                            PATCH /user/virtual_dns/:identifier

                                                                                                            Optional parameters

                                                                                                            Name /typeDescription /exampleConstraints
                                                                                                            name
                                                                                                            string

                                                                                                            Virtual DNS Cluster Name

                                                                                                            "My Awesome Virtual DNS cluster"
                                                                                                            • max length: 160
                                                                                                            origin_ips
                                                                                                            array
                                                                                                            [ "1.1.1.1", "2.2.2.2", "2001:0db8:85a3:0000:0000:8a2e:0370:7334" ]
                                                                                                              minimum_cache_ttl
                                                                                                              number

                                                                                                              Minimum DNS Cache TTL

                                                                                                              60
                                                                                                              • default value: 60
                                                                                                              • min value: 30
                                                                                                              • max value: 36000
                                                                                                              maximum_cache_ttl
                                                                                                              number

                                                                                                              Maximum DNS Cache TTL

                                                                                                              900
                                                                                                              • default value: 900
                                                                                                              • min value: 30
                                                                                                              • max value: 36000
                                                                                                              deprecate_any_request
                                                                                                              boolean

                                                                                                              Deprecate the response to ANY requests

                                                                                                              true
                                                                                                              • valid values: (true,false)
                                                                                                              ratelimit
                                                                                                              number

                                                                                                              Ratelimit in queries per second.

                                                                                                              600
                                                                                                              • min value: 100
                                                                                                              • max value: 100000000
                                                                                                              • notes: A ratelimit of 0 turns off the ratelimit. Otherwise the minimum is 10
                                                                                                              cURL (example)
                                                                                                              curl -X PATCH "https://api.cloudflare.com/client/v4/user/virtual_dns/9a7806061c88ada191ed06f989cc3dac" \
                                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                                   -H "Content-Type: application/json" \
                                                                                                                   --data '{"name":"My Awesome Virtual DNS cluster","origin_ips":["1.1.1.1","2.2.2.2","2001:0db8:85a3:0000:0000:8a2e:0370:7334"],"minimum_cache_ttl":60,"maximum_cache_ttl":900,"deprecate_any_request":true,"ratelimit":600}'
                                                                                                              Response (example)
                                                                                                              {
                                                                                                                "success": true,
                                                                                                                "errors": [],
                                                                                                                "messages": [],
                                                                                                                "result": {
                                                                                                                  "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                                                                  "name": "My Awesome Virtual DNS cluster",
                                                                                                                  "origin_ips": [
                                                                                                                    "1.1.1.1",
                                                                                                                    "2.2.2.2",
                                                                                                                    "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
                                                                                                                  ],
                                                                                                                  "virtual_dns_ips": [
                                                                                                                    "3.3.3.3",
                                                                                                                    "4.4.4.4",
                                                                                                                    "2400:cb00:2048:1::8d65:79ea",
                                                                                                                    "2400:cb00:2048:1::8d65:79e9"
                                                                                                                  ],
                                                                                                                  "minimum_cache_ttl": 60,
                                                                                                                  "maximum_cache_ttl": 900,
                                                                                                                  "deprecate_any_requests": true,
                                                                                                                  "ratelimit": 600,
                                                                                                                  "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                                }
                                                                                                              }

                                                                                                              Virtual DNS (Organizations)

                                                                                                              Organization-level Virtual DNS Management

                                                                                                              Object definition

                                                                                                              View properties and constraints defined on the object

                                                                                                              Show definition

                                                                                                              GET Get Virtual DNS Clusters permission needed: #dns_records:read
                                                                                                              • free
                                                                                                              • pro
                                                                                                              • business
                                                                                                              • enterprise

                                                                                                              List configured Virtual DNS clusters for a user

                                                                                                              GET /organizations/:organization_identifier/virtual_dns
                                                                                                              cURL (example)
                                                                                                              curl -X GET "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/virtual_dns" \
                                                                                                                   -H "X-Auth-Email: user@example.com" \
                                                                                                                   -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                                   -H "Content-Type: application/json"
                                                                                                              Response (example)
                                                                                                              {
                                                                                                                "success": true,
                                                                                                                "errors": [],
                                                                                                                "messages": [],
                                                                                                                "result": [
                                                                                                                  {
                                                                                                                    "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                                                                    "name": "My Awesome Virtual DNS cluster",
                                                                                                                    "origin_ips": [
                                                                                                                      "1.1.1.1",
                                                                                                                      "2.2.2.2",
                                                                                                                      "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
                                                                                                                    ],
                                                                                                                    "virtual_dns_ips": [
                                                                                                                      "3.3.3.3",
                                                                                                                      "4.4.4.4",
                                                                                                                      "2400:cb00:2048:1::8d65:79ea",
                                                                                                                      "2400:cb00:2048:1::8d65:79e9"
                                                                                                                    ],
                                                                                                                    "minimum_cache_ttl": 60,
                                                                                                                    "maximum_cache_ttl": 900,
                                                                                                                    "deprecate_any_requests": true,
                                                                                                                    "ratelimit": 600,
                                                                                                                    "modified_on": "2014-01-01T05:20:00.12345Z"
                                                                                                                  }
                                                                                                                ],
                                                                                                                "result_info": {
                                                                                                                  "page": 1,
                                                                                                                  "per_page": 20,
                                                                                                                  "count": 1,
                                                                                                                  "total_count": 2000
                                                                                                                }
                                                                                                              }

                                                                                                              POST Create a Virtual DNS Cluster permission needed: #dns_records:edit
                                                                                                              • free
                                                                                                              • pro
                                                                                                              • business
                                                                                                              • enterprise

                                                                                                              Create a configured Virtual DNS Cluster

                                                                                                              POST /organizations/:organization_identifier/virtual_dns

                                                                                                              Required parameters

                                                                                                              Name /typeDescription /exampleConstraints
                                                                                                              name
                                                                                                              string

                                                                                                              Virtual DNS Cluster Name

                                                                                                              "My Awesome Virtual DNS cluster"
                                                                                                              • max length: 160
                                                                                                              origin_ips
                                                                                                              array
                                                                                                              [ "1.1.1.1", "2.2.2.2", "2001:0db8:85a3:0000:0000:8a2e:0370:7334" ]

                                                                                                                Optional parameters

                                                                                                                Name /typeDescription /exampleConstraints
                                                                                                                minimum_cache_ttl
                                                                                                                number

                                                                                                                Minimum DNS Cache TTL

                                                                                                                60
                                                                                                                • default value: 60
                                                                                                                • min value: 30
                                                                                                                • max value: 36000
                                                                                                                maximum_cache_ttl
                                                                                                                number

                                                                                                                Maximum DNS Cache TTL

                                                                                                                900
                                                                                                                • default value: 900
                                                                                                                • min value: 30
                                                                                                                • max value: 36000
                                                                                                                deprecate_any_request
                                                                                                                boolean

                                                                                                                Deprecate the response to ANY requests

                                                                                                                true
                                                                                                                • valid values: (true,false)
                                                                                                                ratelimit
                                                                                                                number

                                                                                                                Ratelimit in queries per second.

                                                                                                                600
                                                                                                                • min value: 100
                                                                                                                • max value: 100000000
                                                                                                                • notes: A ratelimit of 0 turns off the ratelimit. Otherwise the minimum is 10
                                                                                                                cURL (example)
                                                                                                                curl -X POST "https://api.cloudflare.com/client/v4/organizations/01a7362d577a6c3019a474fd6f485823/virtual_dns" \
                                                                                                                     -H "X-Auth-Email: user@example.com" \
                                                                                                                     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
                                                                                                                     -H "Content-Type: application/json" \
                                                                                                                     --data '{"name":"My Awesome Virtual DNS cluster","origin_ips":["1.1.1.1","2.2.2.2","2001:0db8:85a3:0000:0000:8a2e:0370:7334"],"minimum_cache_ttl":60,"maximum_cache_ttl":900,"deprecate_any_request":true,"ratelimit":600}'
                                                                                                                Response (example)
                                                                                                                {
                                                                                                                  "success": true,
                                                                                                                  "errors": [],
                                                                                                                  "messages": [],
                                                                                                                  "result": {
                                                                                                                    "id": "9a7806061c88ada191ed06f989cc3dac",
                                                                                                                    "name": "My Awesome Virtual DNS cluster",
                                                                                                                    "origin_ips": [
                                                                                                                      "1.1.1.1",
                                                                                                                      "2.2.2.2",
                                                                                                                      "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
                                                                                                                    ],
                                                                                                                    "virtual_dns_ips": [
                                                                                                                      "3.3.3.3",
                                                                                                                      "4.4.4.4",
                                                                                                                      "2400:cb00:2048:1::8d65:79ea",
                                                                                                                      "2400:cb00:2048:1::8d65:79e9"
                                                                                                                    ],
                                                                                                                    "minimum_cache_ttl&qu