Developer

Developer Docs

85 pages — how-to guides, features, AI abilities, filters, and action hooks.

$

/ How to

/ Features

Feature

Action Scheduler Support

Automatically uses Action Scheduler (when available) instead of WP-Cron for queue processing.

Feature

Activity History

Persistent audit log of every admin and API-token action with actor identity, structured diffs, and AI prompt capture.

Feature

AI Dev Trace

A diagnostic panel for Build with AI that records the exact prompts, raw requests, and raw responses exchanged with the AI model — API keys always redacted.

Feature

Any Hook as a Trigger

Use any WordPress do_action hook as a webhook trigger — no built-in integration needed.

Feature

API Tokens

Scoped API tokens for REST API access — create tokens with read, operational, full, or agent scope.

Feature

Async Delivery Queue

Webhook events are written to a persistent queue and delivered outside the request cycle.

Feature

Build with AI

An in-admin AI agent that turns plain-language requests into working, tested webhook integrations — plan-first, with confirmation before anything goes live.

Feature Pro

Code Glue

Attach short PHP snippets per webhook+trigger to enrich payloads before dispatch.

Feature

Conditional Dispatch

Events are only delivered when payload field values match configured rules; non-matching events are logged as skipped.

Feature

Configurable HTTP Methods

Each webhook can send requests as GET, POST, PUT, PATCH, or DELETE.

Feature

Contact Form 7 Integration

Built-in normalization of CF7 submission objects into clean JSON payloads.

Feature

Credentials Vault

Store reusable authentication secrets encrypted at rest and reference them from webhooks instead of pasting raw Authorization headers.

Feature

Custom Request Headers

Add static or payload-resolved key/value headers sent with every delivery.

Feature

Delivery Logs

Every delivery attempt is stored with HTTP status, response body, headers sent, and full attempt history.

Feature

Developer Extensibility

16 filters and 6 action hooks let you customize every aspect of dispatch, payload, headers, and retry behavior.

Feature Pro

Dynamic URL Templates

Use `{{ field.path }}` placeholders in endpoint URLs — resolved per-event against the live payload.

Feature

Dynamic URLs via Filter

Rewrite the webhook endpoint URL per-event from PHP using the `fswa_webhook_url` filter.

Feature

Event Identity & Deduplication Headers

Every dispatched event gets a UUID and ISO 8601 timestamp embedded in the payload and request headers.

Feature Pro

External Cron

Replace unreliable visitor-triggered WP-Cron with a fully managed external pinger — no server crontab needed.

Feature

Internationalization (i18n)

The entire admin interface and all server-side strings are translatable — English by default, with Polish, Simplified Chinese, and Dutch bundled, plus WPML and Polylang compatibility.

Feature

IvyForms Integration

Built-in normalization of IvyForms field objects and enrichment of submission payloads.

Feature

Payload Mapping

Rename, restructure, or exclude fields in the outgoing JSON before dispatch using dot-notation paths.

Feature Pro

Per-Webhook Backoff Strategy

Choose exponential, linear, or fixed backoff strategy and delay parameters per webhook.

Feature Pro

Per-Webhook Retry Settings

Override the global maximum retry attempt count for individual webhooks.

Feature Pro

Post-Dispatch Scripting

Run PHP code after a successful delivery to process the response and write data back to WordPress.

Feature

REST API

Full operational REST API at `/wp-json/fswa/v1/` for managing webhooks, logs, queue, credentials, and tokens.

Feature

Smart Retry with Exponential Backoff

Failed deliveries retry automatically with exponential backoff; 4xx failures are classified as permanent.

Feature

Synchronous Execution

Optionally fire a webhook inline during the WordPress request, bypassing the queue for the first attempt.

Feature

Test Delivery

Fire a test webhook instantly or via the queue without triggering real WordPress events.

Feature Pro

Unlimited Conditions

Define unlimited condition rules and groups with AND/OR logic between groups.

Feature

URL Query Parameters

Append static or payload-resolved query parameters to the endpoint URL at dispatch time.

Feature

Webhook Chains

A webhook completing with a 2xx response can automatically trigger one or more downstream webhooks.

Feature

Webhook Replay

Re-send any logged event — successful, failed, or condition-skipped — using its original payload.

/ AI Abilities

AI Ability

assign_credential

Assign a vault credential to a webhook — Reference a stored vault credential from a webhook by id (the secret is injected at dispatch time and never exposed).

AI Ability Pro

assign_snippet

Assign a Code Glue snippet to a webhook — Attach a snippet to a webhook+trigger as its pre-dispatch (payload transform) or post-dispatch (after-response side effects) Code Glue and enable it.

AI Ability

create_chain

Create a webhook chain — Create a named chain that wires 2xx completions of one webhook to downstream webhooks.

AI Ability

create_chain_link

Add a chain link — Add a source→target edge to a chain.

AI Ability Pro

create_snippet

Create a Code Glue snippet — Create a Code Glue PHP snippet (inert until assigned to a webhook).

AI Ability

create_webhook

Create a webhook — Create a new webhook (always created DISABLED until the user enables it).

AI Ability Pro

delete_snippet

Delete a Code Glue snippet — Permanently delete a Code Glue snippet.

AI Ability

delete_webhook

Delete a webhook — Permanently delete a webhook and its triggers / mapping.

AI Ability

enable_webhook

Enable / disable a webhook — Enable (go live) or disable a webhook.

AI Ability

get_logs

Get delivery logs — Read recent delivery logs (optionally for one webhook) to verify what was sent and how the endpoint responded.

AI Ability Pro

get_snippet

Get a Code Glue snippet — Get a single Code Glue snippet by id, including its full PHP code.

AI Ability

get_trigger_schema

Get captured payload + mapping for a trigger — Return the last captured example payload, field mapping and conditions for a webhook+trigger so the agent can map against the real payload shape.

AI Ability

get_webhook

Get a webhook — Get a single webhook by id, including triggers, mapping, conditions, headers and credential assignment.

AI Ability

list_credentials

List credentials — List vault credentials (names, types and masked hints only — secrets are never returned).

AI Ability Pro

list_snippets

List Code Glue snippets — List saved Code Glue PHP snippets (id, name, tags — use get_snippet for the code).

AI Ability

list_triggers

List available triggers — List every WordPress do_action hook discovered on this site (runtime + static scan) that can be used as a webhook trigger.

AI Ability

list_webhooks

List webhooks — List all configured webhooks with their triggers and status.

AI Ability Pro

preview_snippet

Preview (test-run) a Code Glue snippet — Test-run a snippet (by snippet_id, or raw code) against a real captured payload WITHOUT dispatching anything.

AI Ability

probe_endpoint

Probe a target endpoint — Make a guarded test HTTP call to validate an endpoint before going live.

AI Ability

set_conditions

Set conditions — Set conditional-dispatch rules for a webhook+trigger so only matching events leave the site.

AI Ability

set_mapping

Set field mapping — Set the payload field mapping for a webhook+trigger (rename / restructure / exclude / type-cast fields with dot-notation paths).

AI Ability

test_dispatch

Test-dispatch a webhook — Send a synchronous test delivery for a webhook using a provided or captured payload, and return the HTTP result so the agent can verify the integration end to end.

AI Ability Pro

update_snippet

Update a Code Glue snippet — Update an existing Code Glue snippet's name, code or tags.

AI Ability

update_webhook

Update a webhook — Update an existing webhook (endpoint, method, triggers, headers, credential).

/ Filters

Filter

fswa_ability_definitions

Filters the ability definitions that make up the AI agent toolset and the WordPress Abilities / MCP exposure.

Filter

fswa_ability_permitted

Filters whether the current request may invoke a Webhook Actions ability through the Abilities API surface.

Filter

fswa_ai_transport

Overrides the LLM transport the Build with AI agent talks through, bypassing built-in provider resolution.

Filter

fswa_available_triggers

Filters the grouped list of available triggers returned by the triggers REST endpoint.

Filter

fswa_backoff_delay

Controls the retry delay in seconds between failed delivery attempts.

Filter

fswa_capture_payload

Filters the payload stored as the example capture — does not affect what is dispatched.

Filter

fswa_headers

Filters the HTTP headers sent with each webhook request.

Filter

fswa_http_args

Filters the full `wp_remote_request()` arguments array before the HTTP call.

Filter

fswa_http_connect_timeout

Sets the TCP connection timeout in seconds (separate from the read timeout).

Filter

fswa_http_timeout

Sets the total HTTP request timeout in seconds.

Filter

fswa_max_attempts

Sets the maximum number of delivery attempts before a webhook is marked permanently failed.

Filter

fswa_normalize_object

Converts custom PHP objects in hook arguments into plain arrays for JSON serialization.

Filter

fswa_payload

Filters the base webhook payload after it is built from the WordPress hook arguments, before it is queued.

Filter

fswa_queue_batch_size

Sets the number of queue jobs processed per batch run.

Filter

fswa_require_https

Controls whether webhook endpoint URLs must use HTTPS.

Filter

fswa_should_dispatch

Controls whether a webhook should be dispatched for the current trigger event.

Filter

fswa_webhook_data

Filters webhook data before it is returned in REST API responses.

Filter

fswa_webhook_payload

Filters the per-webhook outgoing payload after field mapping, immediately before HTTP dispatch.

Filter

fswa_webhook_url

Rewrites the webhook endpoint URL per-event before dispatch.

/ Actions

Ready

Your next automation is
one sentence away.

$ wp plugin install flowsystems-webhook-actions --activate