Cloudflare · Arazzo Workflow

Cloudflare Create WAF Override

Version 1.0.0

Create a URI-based WAF override, read it back, then list the overrides.

1 workflow 1 source API 1 provider
View Spec View on GitHub AI GatewayAPI GatewayArtificial IntelligenceCDNCloudContainersDDoS ProtectionDNSEdgeEdge ComputingObject StoragePlatformReal-Time CommunicationSecurityServerlessWeb PerformanceArazzoWorkflows

Provider

cloudflare

Workflows

create-waf-override
Create a WAF override, fetch it by id, and list the overrides.
Creates a URI-based WAF override for the supplied URLs, retrieves it by id to confirm it persisted, and lists the zone's WAF overrides.
3 steps inputs: description, urls, zoneId outputs: overrideId, overrides
1
createOverride
Create a URI-based WAF override for the supplied URLs.
2
getOverride
Fetch the WAF override by id to confirm it persisted.
3
listOverrides
List the zone's WAF overrides to confirm the new override is present.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Cloudflare Create WAF Override
  summary: Create a URI-based WAF override, read it back, then list the overrides.
  description: >-
    A WAF override scopes managed-rule behavior to specific URLs. The workflow
    creates a URI-based WAF override for a list of URLs, reads it back by id to
    confirm it persisted, and lists the zone's overrides. This targets the
    previous version of WAF managed rules, which is what the override endpoints
    operate on. Each step inlines its request and asserts both the documented
    HTTP 200 status and the Cloudflare {success, result} envelope flag.
  version: 1.0.0
sourceDescriptions:
- name: zonesApi
  url: ../openapi/cloudflare-zones-api-openapi.yml
  type: openapi
workflows:
- workflowId: create-waf-override
  summary: Create a WAF override, fetch it by id, and list the overrides.
  description: >-
    Creates a URI-based WAF override for the supplied URLs, retrieves it by id to
    confirm it persisted, and lists the zone's WAF overrides.
  inputs:
    type: object
    required:
    - zoneId
    - urls
    properties:
      zoneId:
        type: string
        description: The unique identifier of the zone.
      urls:
        type: array
        items:
          type: string
        description: The list of URL patterns the override applies to.
      description:
        type: string
        description: A human-readable description for the override.
  steps:
  - stepId: createOverride
    description: Create a URI-based WAF override for the supplied URLs.
    operationId: waf-overrides-create-a-waf-override
    parameters:
    - name: zone_identifier
      in: path
      value: $inputs.zoneId
    requestBody:
      contentType: application/json
      payload:
        urls: $inputs.urls
        description: $inputs.description
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $.success == true
      type: jsonpath
    outputs:
      overrideId: $response.body#/result/id
  - stepId: getOverride
    description: Fetch the WAF override by id to confirm it persisted.
    operationId: waf-overrides-get-a-waf-override
    parameters:
    - name: zone_identifier
      in: path
      value: $inputs.zoneId
    - name: id
      in: path
      value: $steps.createOverride.outputs.overrideId
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $.success == true
      type: jsonpath
    outputs:
      overrideId: $response.body#/result/id
  - stepId: listOverrides
    description: List the zone's WAF overrides to confirm the new override is present.
    operationId: waf-overrides-list-waf-overrides
    parameters:
    - name: zone_identifier
      in: path
      value: $inputs.zoneId
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $.success == true
      type: jsonpath
    outputs:
      overrides: $response.body#/result
  outputs:
    overrideId: $steps.getOverride.outputs.overrideId
    overrides: $steps.listOverrides.outputs.overrides

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/cloudflare-create-waf-override-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.