WordPress
Required
Fields required for a valid configuration.
| Path | Type | Required | Description | Default | Constraints |
|---|---|---|---|---|---|
| required | object | Yes | — | — | no extra properties |
| required.url | string | Yes | Base URL of the WordPress site (e.g., https://example.com) | — | format uri |
Masked
Sensitive fields under(secrets/credentials).
| Path | Type | Required | Description | Default | Constraints |
|---|---|---|---|---|---|
| masked | object | Yes | — | — | no extra properties |
| masked.application_password | string | No | WordPress application password for authentication (optional) | — | — |
| masked.username | string | No | Username for authentication (optional for public content) | — | — |
Optional
Optional configuration fields.
| Path | Type | Required | Description | Default | Constraints |
|---|---|---|---|---|---|
| optional | object | No | — | — | no extra properties |
| optional.content | object | No | Content scope and filters for WordPress ingestion. | — | no extra properties |
| optional.content.fetch_pages | boolean | No | Whether to fetch pages | true | — |
| optional.content.fetch_posts | boolean | No | Whether to fetch blog posts | true | — |
| optional.content.post_status | array | No | Post status filters (requires authentication for non-public statuses) | ["publish"] | — |
| optional.content.post_status[] | enum | No | WordPress post status Allowed values: publish, future, draft, pending, private | — | — |
Extracted Metadata
Post
| Field | Type | Required | Description |
|---|---|---|---|
| wp_id | string | Yes | WordPress object id |
| title | string | Yes | Title of the post |
| links_count | integer | Yes | Number of linked or related assets |
| slug | string | No | URL slug |
| status | string | No | Post status |
| post_type | string | No | Post type (post/page) |
| author | string | No | Author id or name |
| tags | string[] | No | Tag ids |
| categories | string[] | No | Category ids |
Image
| Field | Type | Required | Description |
|---|---|---|---|
| referenced_by | string | Yes | Hash of the referencing post asset |
Examples
Public blog content scan
Extract all published posts and pages from a public WordPress site — no authentication required
Config Payload
{
"type": "WORDPRESS",
"required": {
"url": "https://example.com"
},
"masked": {},
"optional": {
"content": {
"fetch_posts": true,
"fetch_pages": true
}
},
"sampling": {
"strategy": "AUTOMATIC"
},
"detectors": [
{
"type": "BROKEN_LINKS",
"enabled": true
}
]
}Schedule
{
"enabled": true,
"preset": "nightly",
"cron": "37 1 * * *",
"timezone": "UTC"
}Blog-only content audit
Extract only blog posts (skip static pages) for content quality review
Config Payload
{
"type": "WORDPRESS",
"required": {
"url": "https://example.com"
},
"masked": {},
"optional": {
"content": {
"fetch_posts": true,
"fetch_pages": false
}
},
"sampling": {
"strategy": "AUTOMATIC"
}
}Schedule
{
"enabled": true,
"preset": "daily",
"cron": "22 9 * * *",
"timezone": "UTC"
}Authenticated full crawl with drafts
Scan all content including drafts using application password — useful for pre-publish compliance review
Config Payload
{
"type": "WORDPRESS",
"required": {
"url": "https://example.com"
},
"masked": {
"username": "your-wp-username",
"application_password": "your-application-password"
},
"optional": {
"content": {
"fetch_posts": true,
"fetch_pages": true,
"post_status": [
"publish",
"draft"
]
}
},
"sampling": {
"strategy": "AUTOMATIC"
},
"detectors": [
{
"type": "PII",
"enabled": true
},
{
"type": "BROKEN_LINKS",
"enabled": true
}
]
}Schedule
{
"enabled": true,
"preset": "nightly",
"cron": "14 0 * * *",
"timezone": "UTC"
}