Skip to content
Start here

Create a device posture integration

client.zeroTrust.devices.posture.integrations.create(IntegrationCreateParams { account_id, config, interval, 2 more } params, RequestOptionsoptions?): Integration { id, config, interval, 2 more } | null
POST/accounts/{account_id}/devices/posture/integration

Create a new device posture integration.

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: IntegrationCreateParams { account_id, config, interval, 2 more }
account_id: string

Path param

config: TeamsDevicesWorkspaceOneConfigRequest { api_url, auth_url, client_id, client_secret } | TeamsDevicesCrowdstrikeConfigRequest { api_url, client_id, client_secret, customer_id } | TeamsDevicesUptycsConfigRequest { api_url, client_key, client_secret, customer_id } | 5 more

Body param: The configuration object containing third-party integration information.

One of the following:
TeamsDevicesWorkspaceOneConfigRequest { api_url, auth_url, client_id, client_secret }
api_url: string

The Workspace One API URL provided in the Workspace One Admin Dashboard.

auth_url: string

The Workspace One Authorization URL depending on your region.

client_id: string

The Workspace One client ID provided in the Workspace One Admin Dashboard.

client_secret: string

The Workspace One client secret provided in the Workspace One Admin Dashboard.

TeamsDevicesCrowdstrikeConfigRequest { api_url, client_id, client_secret, customer_id }
api_url: string

The Crowdstrike API URL.

client_id: string

The Crowdstrike client ID.

client_secret: string

The Crowdstrike client secret.

customer_id: string

The Crowdstrike customer ID.

TeamsDevicesUptycsConfigRequest { api_url, client_key, client_secret, customer_id }
api_url: string

The Uptycs API URL.

client_key: string

The Uptycs client secret.

client_secret: string

The Uptycs client secret.

customer_id: string

The Uptycs customer ID.

TeamsDevicesIntuneConfigRequest { client_id, client_secret, customer_id }
client_id: string

The Intune client ID.

client_secret: string

The Intune client secret.

customer_id: string

The Intune customer ID.

TeamsDevicesKolideConfigRequest { client_id, client_secret }
client_id: string

The Kolide client ID.

client_secret: string

The Kolide client secret.

TeamsDevicesTaniumConfigRequest { api_url, client_secret, access_client_id, access_client_secret }
api_url: string

The Tanium API URL.

client_secret: string

The Tanium client secret.

access_client_id?: string

If present, this id will be passed in the CF-Access-Client-ID header when hitting the api_url.

access_client_secret?: string

If present, this secret will be passed in the CF-Access-Client-Secret header when hitting the api_url.

TeamsDevicesSentineloneS2sConfigRequest { api_url, client_secret }
api_url: string

The SentinelOne S2S API URL.

client_secret: string

The SentinelOne S2S client secret.

TeamsDevicesCustomS2sConfigRequest { access_client_id, access_client_secret, api_url }
access_client_id: string

This id will be passed in the CF-Access-Client-ID header when hitting the api_url.

access_client_secret: string

This secret will be passed in the CF-Access-Client-Secret header when hitting the api_url.

api_url: string

The Custom Device Posture Integration API URL.

interval: string

Body param: The interval between each posture check with the third-party API. Use m for minutes (e.g. 5m) and h for hours (e.g. 12h).

name: string

Body param: The name of the device posture integration.

type: "workspace_one" | "crowdstrike_s2s" | "uptycs" | 5 more

Body param: The type of device posture integration.

One of the following:
"workspace_one"
"crowdstrike_s2s"
"uptycs"
"intune"
"kolide"
"tanium_s2s"
"sentinelone_s2s"
"custom_s2s"
ReturnsExpand Collapse
Integration { id, config, interval, 2 more } | null
id?: string

API UUID.

maxLength36
config?: Config { api_url, auth_url, client_id }

The configuration object containing third-party integration information.

api_url: string

The Workspace One API URL provided in the Workspace One Admin Dashboard.

auth_url: string

The Workspace One Authorization URL depending on your region.

client_id: string

The Workspace One client ID provided in the Workspace One Admin Dashboard.

interval?: string

The interval between each posture check with the third-party API. Use m for minutes (e.g. 5m) and h for hours (e.g. 12h).

name?: string

The name of the device posture integration.

type?: "workspace_one" | "crowdstrike_s2s" | "uptycs" | 5 more

The type of device posture integration.

One of the following:
"workspace_one"
"crowdstrike_s2s"
"uptycs"
"intune"
"kolide"
"tanium_s2s"
"sentinelone_s2s"
"custom_s2s"

Create a device posture integration

import Cloudflare from 'cloudflare';

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

const integration = await client.zeroTrust.devices.posture.integrations.create({
  account_id: '699d98642c564d2e855e9661899b7252',
  config: {
    api_url: 'https://as123.awmdm.com/API',
    auth_url: 'https://na.uemauth.workspaceone.com/connect/token',
    client_id: 'example client id',
    client_secret: 'example client secret',
  },
  interval: '10m',
  name: 'My Workspace One Integration',
  type: 'workspace_one',
});

console.log(integration.id);
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
    "config": {
      "api_url": "https://as123.awmdm.com/API",
      "auth_url": "https://na.uemauth.workspaceone.com/connect/token",
      "client_id": "example client id"
    },
    "interval": "10m",
    "name": "My Workspace One Integration",
    "type": "workspace_one"
  },
  "success": true
}
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"
      }
    }
  ],
  "result": {
    "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
    "config": {
      "api_url": "https://as123.awmdm.com/API",
      "auth_url": "https://na.uemauth.workspaceone.com/connect/token",
      "client_id": "example client id"
    },
    "interval": "10m",
    "name": "My Workspace One Integration",
    "type": "workspace_one"
  },
  "success": true
}