Skip to content
Start here

Create a new dataset

client.zeroTrust.dlp.datasets.create(DatasetCreateParams { account_id, name, case_sensitive, 3 more } params, RequestOptionsoptions?): DatasetCreation { dataset, encoding_version, max_cells, 2 more }
POST/accounts/{account_id}/dlp/datasets

Creates a new DLP (Data Loss Prevention) dataset for storing custom detection patterns. Datasets can contain exact match data, word lists, or EDM (Exact Data Match) configurations.

Security
API Token

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

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

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

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

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

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Zero Trust Write
ParametersExpand Collapse
params: DatasetCreateParams { account_id, name, case_sensitive, 3 more }
account_id: string

Path param

name: string

Body param

case_sensitive?: boolean

Body param: Only applies to custom word lists. Determines if the words should be matched in a case-sensitive manner Cannot be set to false if secret is true or undefined

description?: string | null

Body param: The description of the dataset.

encoding_version?: number

Body param: Dataset encoding version

Non-secret custom word lists with no header are always version 1. Secret EDM lists with no header are version 1. Multicolumn CSV with headers are version 2. Omitting this field provides the default value 0, which is interpreted the same as 1.

formatint32
minimum0
secret?: boolean

Body param: Generate a secret dataset.

If true, the response will include a secret to use with the EDM encoder. If false, the response has no secret and the dataset is uploaded in plaintext.

ReturnsExpand Collapse
DatasetCreation { dataset, encoding_version, max_cells, 2 more }
dataset: Dataset { id, columns, created_at, 9 more }
id: string
formatuuid
columns: Array<Column>
entry_id: string
formatuuid
header_name: string
num_cells: number
formatint64
upload_status: "empty" | "uploading" | "pending" | 3 more
One of the following:
"empty"
"uploading"
"pending"
"processing"
"failed"
"complete"
created_at: string
formatdate-time
encoding_version: number
formatint32
minimum0
name: string
num_cells: number
formatint64
secret: boolean
status: "empty" | "uploading" | "pending" | 3 more
One of the following:
"empty"
"uploading"
"pending"
"processing"
"failed"
"complete"
updated_at: string

Stores when the dataset was last updated.

This includes name or description changes as well as uploads.

formatdate-time
uploads: Array<Upload>
num_cells: number
formatint64
status: "empty" | "uploading" | "pending" | 3 more
One of the following:
"empty"
"uploading"
"pending"
"processing"
"failed"
"complete"
version: number
formatint64
case_sensitive?: boolean
description?: string | null

The description of the dataset.

encoding_version: number

Encoding version to use for dataset.

formatint32
minimum0
max_cells: number
formatint64
minimum0
version: number

The version to use when uploading the dataset.

formatint64
secret?: string

The secret to use for Exact Data Match datasets.

This is not present in Custom Wordlists.

formatpassword

Create a new dataset

import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

const datasetCreation = await client.zeroTrust.dlp.datasets.create({
  account_id: 'account_id',
  name: 'name',
});

console.log(datasetCreation.dataset);
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "dataset": {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "columns": [
        {
          "entry_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "header_name": "header_name",
          "num_cells": 0,
          "upload_status": "empty"
        }
      ],
      "created_at": "2019-12-27T18:11:19.117Z",
      "encoding_version": 0,
      "name": "name",
      "num_cells": 0,
      "secret": true,
      "status": "empty",
      "updated_at": "2019-12-27T18:11:19.117Z",
      "uploads": [
        {
          "num_cells": 0,
          "status": "empty",
          "version": 0
        }
      ],
      "case_sensitive": true,
      "description": "description"
    },
    "encoding_version": 0,
    "max_cells": 0,
    "version": 0,
    "secret": "secret"
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "dataset": {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "columns": [
        {
          "entry_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "header_name": "header_name",
          "num_cells": 0,
          "upload_status": "empty"
        }
      ],
      "created_at": "2019-12-27T18:11:19.117Z",
      "encoding_version": 0,
      "name": "name",
      "num_cells": 0,
      "secret": true,
      "status": "empty",
      "updated_at": "2019-12-27T18:11:19.117Z",
      "uploads": [
        {
          "num_cells": 0,
          "status": "empty",
          "version": 0
        }
      ],
      "case_sensitive": true,
      "description": "description"
    },
    "encoding_version": 0,
    "max_cells": 0,
    "version": 0,
    "secret": "secret"
  }
}