Cloudflare/devices
@swamp/cloudflare/devicesv2026.10.23.1
01README
Cloudflare devices infrastructure models
02Release Notes
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
03Behaviors
deployment-groups.tsv2026.10.23.1
Global Arguments
| Argument | Type | Description |
|---|---|---|
| account_id | string | Cloudflare account ID |
| name? | string | A user-friendly name for the deployment group. |
| policy_ids? | array | Contains an optional list of policy IDs assigned to a group. |
| version_config? | array | Contains at least one version configuration. |
| apiToken? | string | Cloudflare API token; overrides the CLOUDFLARE_API_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| apiKey? | string | Cloudflare API key for the legacy key+email auth path; overrides the CLOUDFLARE_API_KEY environment variable. Wire with a vault.get(...) expression. Requires email. |
| email? | string | Cloudflare account email for the legacy key+email auth path; overrides the CLOUDFLARE_EMAIL environment variable. Requires apiKey. |
fn create()
Create a Deployment-groups
fn get(id: string)
Get a Deployment-groups
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Deployment-groups |
fn lookup(allowMissing?: boolean)
Look up an existing Deployment-groups by matching global argument values and import it into state
| Argument | Type | Description |
|---|---|---|
| allowMissing? | boolean | Succeed and record found: false in lookupResult when nothing matches, instead of failing |
fn adopt(id: string)
Import an existing Deployment-groups by ID into state for management
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Deployment-groups to import |
fn update(identifier?: string)
Update Deployment-groups attributes
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Deployment-groups by id (e.g. one discovered by list) |
fn delete(id: string)
Delete the Deployment-groups
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Deployment-groups |
fn sync(identifier?: string)
Sync Deployment-groups state from Cloudflare
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Deployment-groups by id (e.g. one discovered by list) |
Resources
state(infinite)— Deployment-groups resource state
lookupResult(infinite)— Outcome of the most recent lookup
integration.tsv2026.10.23.1
Global Arguments
| Argument | Type | Description |
|---|---|---|
| account_id | string | Cloudflare account ID |
| config? | record | The configuration object containing third-party integration information. |
| 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? | enum | The type of device posture integration. |
| apiToken? | string | Cloudflare API token; overrides the CLOUDFLARE_API_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| apiKey? | string | Cloudflare API key for the legacy key+email auth path; overrides the CLOUDFLARE_API_KEY environment variable. Wire with a vault.get(...) expression. Requires email. |
| email? | string | Cloudflare account email for the legacy key+email auth path; overrides the CLOUDFLARE_EMAIL environment variable. Requires apiKey. |
fn create()
Create a Integration
fn get(id: string)
Get a Integration
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Integration |
fn lookup(allowMissing?: boolean)
Look up an existing Integration by matching global argument values and import it into state
| Argument | Type | Description |
|---|---|---|
| allowMissing? | boolean | Succeed and record found: false in lookupResult when nothing matches, instead of failing |
fn adopt(id: string)
Import an existing Integration by ID into state for management
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Integration to import |
fn update(identifier?: string)
Update Integration attributes
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Integration by id (e.g. one discovered by list) |
fn delete(id: string)
Delete the Integration
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Integration |
fn sync(identifier?: string)
Sync Integration state from Cloudflare
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Integration by id (e.g. one discovered by list) |
Resources
state(infinite)— Integration resource state
lookupResult(infinite)— Outcome of the most recent lookup
ip-profiles.tsv2026.10.23.1
Global Arguments
| Argument | Type | Description |
|---|---|---|
| account_id | string | Cloudflare account ID |
| description? | string | An optional description of the Device IP profile. |
| enabled? | boolean | Whether the Device IP profile will be applied to matching devices. |
| match? | string | The wirefilter expression to match registrations. Available values: "identity.name", "identity.email", "identity.groups.id", "identity.groups.name", "identity.groups.email", "identity.saml_attributes". |
| name? | string | A user-friendly name for the Device IP profile. |
| precedence? | number | The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field. |
| subnet_id? | string | The ID of the Subnet. |
| apiToken? | string | Cloudflare API token; overrides the CLOUDFLARE_API_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| apiKey? | string | Cloudflare API key for the legacy key+email auth path; overrides the CLOUDFLARE_API_KEY environment variable. Wire with a vault.get(...) expression. Requires email. |
| email? | string | Cloudflare account email for the legacy key+email auth path; overrides the CLOUDFLARE_EMAIL environment variable. Requires apiKey. |
fn create()
Create a Ip-profiles
fn get(id: string)
Get a Ip-profiles
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Ip-profiles |
fn lookup(allowMissing?: boolean)
Look up an existing Ip-profiles by matching global argument values and import it into state
| Argument | Type | Description |
|---|---|---|
| allowMissing? | boolean | Succeed and record found: false in lookupResult when nothing matches, instead of failing |
fn adopt(id: string)
Import an existing Ip-profiles by ID into state for management
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Ip-profiles to import |
fn update(identifier?: string)
Update Ip-profiles attributes
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Ip-profiles by id (e.g. one discovered by list) |
fn delete(id: string)
Delete the Ip-profiles
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Ip-profiles |
fn sync(identifier?: string)
Sync Ip-profiles state from Cloudflare
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Ip-profiles by id (e.g. one discovered by list) |
Resources
state(infinite)— Ip-profiles resource state
lookupResult(infinite)— Outcome of the most recent lookup
networks.tsv2026.10.23.1
Global Arguments
| Argument | Type | Description |
|---|---|---|
| account_id | string | Cloudflare account ID |
| config? | record | The configuration object containing information for the WARP client to detect the managed network. |
| name? | string | The name of the device managed network. This name must be unique. |
| type? | enum | The type of device managed network. |
| apiToken? | string | Cloudflare API token; overrides the CLOUDFLARE_API_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| apiKey? | string | Cloudflare API key for the legacy key+email auth path; overrides the CLOUDFLARE_API_KEY environment variable. Wire with a vault.get(...) expression. Requires email. |
| email? | string | Cloudflare account email for the legacy key+email auth path; overrides the CLOUDFLARE_EMAIL environment variable. Requires apiKey. |
fn create()
Create a Networks
fn get(id: string)
Get a Networks
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Networks |
fn lookup(allowMissing?: boolean)
Look up an existing Networks by matching global argument values and import it into state
| Argument | Type | Description |
|---|---|---|
| allowMissing? | boolean | Succeed and record found: false in lookupResult when nothing matches, instead of failing |
fn adopt(id: string)
Import an existing Networks by ID into state for management
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Networks to import |
fn update(identifier?: string)
Update Networks attributes
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Networks by id (e.g. one discovered by list) |
fn delete(id: string)
Delete the Networks
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Networks |
fn sync(identifier?: string)
Sync Networks state from Cloudflare
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Networks by id (e.g. one discovered by list) |
Resources
state(infinite)— Networks resource state
lookupResult(infinite)— Outcome of the most recent lookup
policy.tsv2026.10.23.1
Global Arguments
| Argument | Type | Description |
|---|---|---|
| account_id | string | Cloudflare account ID |
| allow_mode_switch? | boolean | Whether to allow the user to switch WARP between modes. |
| allow_updates? | boolean | Whether to receive update notifications when a new version of the client is available. |
| allowed_to_leave? | boolean | Whether to allow devices to leave the organization. |
| auto_connect? | number | The amount of time in seconds to reconnect after having been disabled. |
| browser_extension_config? | object | Browser extension proxy settings. Required when profile_type is browser_extension and invalid for WARP profiles. |
| captive_portal? | number | Turn on the captive portal after the specified amount of time. |
| default? | boolean | Whether the policy is the account default. WARP group profiles cannot set this field. |
| description? | string | A description of the policy. |
| disable_auto_fallback? | boolean | If the `dns_server` field of a fallback domain is not present, the client will fall back to a best guess of the default/system DNS resolvers unless this policy option is set to `true`. |
| dns_search_suffixes? | array | List of DNS search suffixes to apply to clients. Suffixes are evaluated in order. Use an empty array to clear. |
| enable_device_credential_authentication? | boolean | Determines whether the WARP client can silently reauthenticate the user with device credentials (Microsoft Entra) instead of prompting for browser-based reauthentication. |
| enabled? | boolean | Whether the policy will be applied to matching devices. |
| exclude? | array | List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request. |
| exclude_office_ips? | boolean | Whether to add Microsoft IPs to Split Tunnel exclusions. |
| global_acceleration? | object | Global Acceleration settings for China. When configured, WARP clients connect to the Global Accelerator addresses instead of the default ones. Please contact your account representative to enable this feature on your account. See https://developers.cloudflare.com/china-network/concepts/global-acceleration/. |
| include? | array | List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request. |
| lan_allow_minutes? | number | The amount of time in minutes a user is allowed access to their LAN. A value of 0 will allow LAN access until the next WARP reconnection, such as a reboot or a laptop waking from sleep. Note that this field is omitted from the response if null or unset. |
| lan_allow_subnet_size? | number | The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset. |
| match? | string | The wirefilter expression to match devices. Available values: "identity.email", "identity.groups.id", "identity.groups.name", "identity.groups.email", "identity.service_token_uuid", "identity.saml_attributes", "network", "os.name", "os.version", "device.tags". |
| name? | string | The name of the device settings profile. |
| precedence? | number | The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field. |
| register_interface_ip_with_dns? | boolean | Determines if the operating system will register WARP's local interface IP with your on-premises DNS server. |
| sccm_vpn_boundary_support? | boolean | Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only). |
| service_mode_v2? | object | |
| support_url? | string | The URL to launch when the Send Feedback button is clicked. |
| switch_locked? | boolean | Whether to allow the user to turn off the WARP switch and disconnect the client. |
| tunnel_protocol? | string | Determines which tunnel protocol to use. |
| uninstall_protection? | boolean | Determines whether uninstalling the WARP client requires an override code. (Windows only). |
| virtual_networks? | object | Virtual network access settings for the device. |
| profile_type? | enum | The client type to which the device settings profile applies. This field is set when the profile is created and cannot be changed. |
| apiToken? | string | Cloudflare API token; overrides the CLOUDFLARE_API_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| apiKey? | string | Cloudflare API key for the legacy key+email auth path; overrides the CLOUDFLARE_API_KEY environment variable. Wire with a vault.get(...) expression. Requires email. |
| email? | string | Cloudflare account email for the legacy key+email auth path; overrides the CLOUDFLARE_EMAIL environment variable. Requires apiKey. |
fn create()
Create a Policy
fn get(id: string)
Get a Policy
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Policy |
fn lookup(allowMissing?: boolean)
Look up an existing Policy by matching global argument values and import it into state
| Argument | Type | Description |
|---|---|---|
| allowMissing? | boolean | Succeed and record found: false in lookupResult when nothing matches, instead of failing |
fn adopt(id: string)
Import an existing Policy by ID into state for management
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Policy to import |
fn update(identifier?: string)
Update Policy attributes
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Policy by id (e.g. one discovered by list) |
fn delete(id: string)
Delete the Policy
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Policy |
fn sync(identifier?: string)
Sync Policy state from Cloudflare
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Policy by id (e.g. one discovered by list) |
Resources
state(infinite)— Policy resource state
lookupResult(infinite)— Outcome of the most recent lookup
posture.tsv2026.10.23.1
Global Arguments
| Argument | Type | Description |
|---|---|---|
| account_id | string | Cloudflare account ID |
| description? | string | The description of the device posture rule. |
| expiration? | string | Sets the expiration time for a posture check result. If empty, the result remains valid until it is overwritten by new data from the WARP client. |
| input? | object | |
| match? | array | The conditions that the client must match to run the rule. |
| name? | string | The name of the device posture rule. |
| schedule? | string | Polling frequency for the WARP client posture check. Default: `5m` (poll every five minutes). Minimum: `1m`. |
| type? | enum | The type of device posture rule. |
| apiToken? | string | Cloudflare API token; overrides the CLOUDFLARE_API_TOKEN environment variable. Wire with a vault.get(...) expression to source it from a vault. |
| apiKey? | string | Cloudflare API key for the legacy key+email auth path; overrides the CLOUDFLARE_API_KEY environment variable. Wire with a vault.get(...) expression. Requires email. |
| email? | string | Cloudflare account email for the legacy key+email auth path; overrides the CLOUDFLARE_EMAIL environment variable. Requires apiKey. |
fn create()
Create a Posture
fn get(id: string)
Get a Posture
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Posture |
fn lookup(allowMissing?: boolean)
Look up an existing Posture by matching global argument values and import it into state
| Argument | Type | Description |
|---|---|---|
| allowMissing? | boolean | Succeed and record found: false in lookupResult when nothing matches, instead of failing |
fn adopt(id: string)
Import an existing Posture by ID into state for management
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Posture to import |
fn update(identifier?: string)
Update Posture attributes
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Posture by id (e.g. one discovered by list) |
fn delete(id: string)
Delete the Posture
| Argument | Type | Description |
|---|---|---|
| id | string | The ID of the Posture |
fn sync(identifier?: string)
Sync Posture state from Cloudflare
| Argument | Type | Description |
|---|---|---|
| identifier? | string | Target a specific Posture by id (e.g. one discovered by list) |
Resources
state(infinite)— Posture resource state
lookupResult(infinite)— Outcome of the most recent lookup
04Previous Versions
2026.10.20.1AGPL-3.0-or-later
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
Modified 1 behaviors
2026.10.17.1AGPL-3.0-or-later
- Updated: networks
- Updated: integration
2026.10.16.2AGPL-3.0-or-later
2026.10.16.1AGPL-3.0-or-later(was none)
- Updated: policy
2026.10.13.1
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
2026.09.29.2
- Updated: networks
- Updated: posture
2026.09.29.1
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
2026.09.25.1
- Updated: policy
2026.09.23.1
- Updated: policy
Added 1, removed 6 behaviors
2026.09.08.1
- Updated: policy
2026.08.25.2
- Updated: ip-profiles
- Updated: policy
- Updated: posture
2026.08.25.1
- Updated: ip-profiles
- Updated: policy
- Updated: posture
2026.08.11.1
- Updated: policy
- Updated: posture
- Updated: integration
2026.07.21.1
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
2026.07.18.2
Modified 6 behaviors
2026.07.15.1
- Updated: posture
2026.06.24.1
- Updated: policy
2026.06.08.2
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
2026.05.29.1
- Updated: deployment-groups
- Updated: ip-profiles
- Updated: networks
- Updated: policy
- Updated: posture
- Updated: integration
05Stats
A
100 / 100
Downloads
25
Archive size
33.8 KB
Verified by Swamp
- Has README or module doc2/2earned
- README has a code example1/1earned
- README is substantive1/1earned
- Most symbols documented1/1earned
- No slow types (deprecated)1/1earned
- Dependencies pass trust audit2/2earned
- Docs keep secrets in a vault1/1earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License2/2earned
- Verified public repository2/2earned
06Platforms
07Labels