Elastic Cloud ACTION
Update Traffic Filter Ruleset
Update an existing traffic filter ruleset in Elastic Cloud. The underlying API replaces the whole ruleset, so this action first reads the current ruleset and merges your changes over it — supply only the fields you want to change. The ruleset's
type and region are immutable after creation and are carried over automatically. Run List Traffic Filter Rulesets first to find the ruleset ID. See the documentation- Action
- Writes data
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Elastic Cloud account once, then configure and run Update Traffic Filter Ruleset from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "elastic_cloud-update-traffic-filter",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
elastic_cloud: { authProvisionId: "apn_xxxxxxx" },
rulesetId: "Ruleset ID",
name: "Name",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "elastic_cloud-update-traffic-filter",
"configured_props": {
"elastic_cloud": { "authProvisionId": "apn_xxxxxxx" },
"rulesetId": "Ruleset ID",
"name": "Name"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "elastic_cloud",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "elastic_cloud-update-traffic-filter",
arguments: {
rulesetId: "Ruleset ID",
name: "Name",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
rulesetId Ruleset ID | string | The ID of the traffic filter ruleset (e.g. tf-ruleset-001). Run the List Traffic Filter Rulesets action first to obtain valid ruleset IDs. Required |
name Name | string | Updated human-readable name for the ruleset. Optional |
description Description | string | Updated description of the ruleset. Optional |
includeByDefault Include By Default | boolean | Whether to apply this ruleset to all new deployments by default. Optional |
rules Rules | string | Optional JSON array of rule objects that replaces every rule currently in the ruleset — include the existing rules you want to keep. Omit this prop to leave the current rules untouched. Example: [{"source":"1.2.3.4/32"}] Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- elastic_cloud-update-traffic-filter
- Version
- 0.0.2
- App
- Elastic Cloud
- Authentication
- API key
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗