Security

Automation you can actually trust.

Encrypted credentials, SSRF-hardened requests, preview-before-publish, crash-safe queues and a data-preserving uninstall—engineered in, not bolted on.

Quick answer

Ingestics runs entirely inside WordPress. Every secret is stored AES-encrypted at rest, remote requests are hardened against SSRF, no third-party service is contacted unless you enable it, and deactivation preserves all your data. Security controls are present from the free tier.

Credentials

Encrypted secret vault

All sensitive values are stored using AES encryption with a unique random IV per secret and an HMAC MAC for integrity, prefixed aapi_sec_v1: so they are identifiable. Encrypted values include the license key, OAuth tokens, webhook and bridge secrets, and every AI, translation and stock-image API key. Provider credentials—including Basic usernames and secret-flagged custom headers—are vaulted and stored non-autoloaded. Legacy plaintext values are silently migrated to encrypted form on first read.

Cipher
AES + HMAC, random IV per secret
Prefix
aapi_sec_v1:
Vaulted
License, OAuth, webhook/bridge secrets, all AI/translation/stock keys
Masking
Secrets shown as **** in previews, tests and logs
Requests

SSRF protection and hardening

Remote URL validation

Endpoints are normalised and validated; non-http(s), invalid URLs, empty hosts and private/reserved/link-local IP targets are blocked by default.

Filtered escape hatch

Controlled environments can allow private-network URLs via an explicit filter—off by default.

Response-size budgets

Every outbound request (API, RSS, licensing, AI, OAuth, chained, stock, full-text, file import) has a response-size budget; XLSX imports add zip-bomb guards.

Diagnostic masking

URLs and bodies are masked for credentials, signatures, secrets and passwords in logs and diagnostics.

Admin AJAX protection

Nonce verification and capability checks are enforced on admin-side AJAX operations.

Webhook hardening

The inbound trigger accepts POST by default with a shared-secret header and IP rate limiting; legacy GET and query-secret are off unless explicitly enabled.

Reliability

Durable and crash-safe by design

Resumable fetch jobsBounded background jobs use renewable execution leases, page/item chunking and crash-recovery checkpoints.
No duplicate creationIntra-item publication heartbeats, deterministic recovery identities and connection-scoped locks prevent duplicates across crash windows.
Safe outbound deliveriesAPI Actions use encrypted payloads, idempotency keys, destination locks, bounded retries, dead-letter retention and outcome-unknown quarantine—no unsafe replay.
Transparent accountingEvery run reconciles fetched, created, updated, unchanged, filtered, duplicate and error counts—no silent failures.
Privacy

Your data stays yours

Runs inside WordPress

No third-party servers sit between your sources and your site.

Opt-in third parties

No AI, translation or stock service is called unless you enable and configure it.

Data-preserving uninstall

Deactivation clears only schedules and locks; providers, credentials, settings, logs and published content are kept.

Where are my API credentials stored?

+
Encrypted in your WordPress database with AES plus a random IV and HMAC integrity check—never exposed in page content, previews or logs.

Does my data leave my site?

+
Only to the sources and services you configure. No third-party servers sit between your sources and your site, and optional AI, translation and stock services are only called when you enable them.

Can I stop bad data from publishing?

+
Yes. Preview every run, hold items as drafts, and use the filter engine (6 rules on Pro, 14 on Business) to reject, draft or publish by rule.

What happens to my data if I uninstall?

+
Deactivation and uninstall clear only schedules, locks and queued side-effects. Your providers, credentials, settings, logs, imported sources and published posts are preserved.

Is it safe on a multisite network?

+
Yes—the lifecycle is multisite-aware and initialises defaults for newly created sites when network-activated.
Get started

Automate with confidence

Start free and see the controls for yourself.