Skip to main content

WordPress

This page contains the setup guide and reference information for the WordPress source connector.

Prerequisites

  • A self-hosted WordPress site (WordPress.org) with the REST API enabled (default on WordPress 4.7 and later).
  • The site's domain name—for example, my-site.example.com.
note

This connector reads data from the public WordPress REST API. Most read endpoints for posts, pages, comments, categories, tags, and media are accessible without authentication. Endpoints that expose private data—such as plugins, themes, settings, and users with full details—require authentication.

Authentication

The connector sends HTTP Basic Authentication headers with each request. For public endpoints, you can leave the Username and Password fields at their default values.

To access authenticated endpoints such as plugins, themes, and settings, provide valid WordPress credentials. WordPress supports Application Passwords (available since WordPress 5.6), which are the recommended method for REST API authentication:

  1. In your WordPress admin dashboard, go to Users > Profile.
  2. Scroll to the Application Passwords section.
  3. Enter a name for the application (for example, Airbyte) and click Add New Application Password.
  4. Copy the generated password. Use your WordPress username and this application password as the connector credentials.

Setup guide

  1. Enter the Domain of your WordPress site without the protocol—for example, my-site.example.com.
  2. Enter your Username and Password. Leave the default values if you only need to sync public data.
  3. Optionally, set a Start Date to limit incremental streams to records modified after that date. Use the format YYYY-MM-DDTHH:MM:SSZ—for example, 2024-01-01T00:00:00Z.
  4. Optionally, set a Lookback Window (in hours) for incremental streams. This re-fetches the specified number of hours of previously synced data on each sync to guard against data loss. Set to 0 to disable. Duplicates are handled by destination deduplication.

Supported sync modes

The WordPress source connector supports the following sync modes:

  • Full Refresh
  • Incremental

Supported streams

The connector syncs data from the following WordPress REST API endpoints:

StreamAPI EndpointSync ModePaginationPrimary KeyDescription
users/wp/v2/usersFull RefreshYesidSite authors and contributors.
posts/wp/v2/postsFull RefreshYesidBlog posts.
categories/wp/v2/categoriesFull RefreshYesidPost categories.
tags/wp/v2/tagsFull RefreshYesidPost tags.
pages/wp/v2/pagesIncrementalYesidStatic pages. Cursor field: modified.
page_revisions/wp/v2/pages/{id}/revisionsFull RefreshYesidRevision history for each page.
comments/wp/v2/commentsIncrementalYesidComments on posts and pages. Cursor field: date.
media/wp/v2/mediaIncrementalYesidUploaded images, videos, and other media files. Cursor field: modified.
editor_blocks/wp/v2/blocksIncrementalYesidReusable block patterns (synced patterns). Cursor field: modified.
plugins/wp/v2/pluginsFull RefreshNopluginInstalled plugins. Requires authentication.
taxonomies/wp/v2/taxonomiesFull RefreshNocategoryRegistered taxonomies (for example, categories and tags).
types/wp/v2/typesFull RefreshNoRegistered post types (for example, post, page, attachment).
themes/wp/v2/themesFull RefreshNostylesheetInstalled themes. Requires authentication.
statuses/wp/v2/statusesFull RefreshNoAvailable post statuses (for example, publish, draft, private).
settings/wp/v2/settingsFull RefreshNoSite-wide settings such as title, description, and timezone. Requires authentication.

Incremental sync details

The pages, media, and editor_blocks streams use the modified field as the cursor, tracking records by their last modification time in the site's local timezone. The comments stream uses the date field.

Because these timestamps use the site's local timezone, clock changes during daylight saving time (DST) transitions can cause non-monotonic timestamps. If this is a concern, configure a Lookback Window to re-fetch recent data and prevent gaps.

Limitations

  • Pagination: The WordPress REST API limits paginated responses to a maximum of 100 items per page. The connector handles this automatically.
  • Authenticated endpoints: The plugins, themes, and settings streams require valid credentials. If the connector is configured without authentication, these streams return errors or empty results.
  • WordPress.com hosted sites: This connector is designed for the self-hosted WordPress REST API (/wp-json/wp/v2/). It may not work with WordPress.com sites that use a different API structure.

Reference

Config fields reference

Field
Type
Property name
string
domain
string
password
string
start_date
string
username
integer
lookback_window

Changelog

Expand to review
VersionDatePull RequestSubject
0.0.512026-04-2877478Update dependencies
0.0.492026-04-0976063Add configurable lookback window to incremental streams to prevent data loss; fix tab character in pages stream request parameter
VersionDatePull RequestSubject
------------------------------------------------------------------------------------------------------------------
0.0.502026-04-2176792Update dependencies
0.0.492026-04-0376063Add 1-hour lookback window to incremental streams to prevent data loss during DST transitions; fix tab character in pages stream request parameter
0.0.482026-03-3175861Update dependencies
0.0.472026-03-2474691Update dependencies
0.0.462026-03-0374149Update dependencies
0.0.452026-02-1773511Update dependencies
0.0.442026-01-2772050Update dependencies
0.0.432026-01-1471483Update dependencies
0.0.422025-12-1870682Update dependencies
0.0.412025-11-2570195Update dependencies
0.0.402025-11-1869649Update dependencies
0.0.392025-10-2968929Update dependencies
0.0.382025-10-2168373Update dependencies
0.0.372025-10-1467932Update dependencies
0.0.362025-10-0767324Update dependencies
0.0.352025-09-3066457Update dependencies
0.0.342025-09-0965666Update dependencies
0.0.332025-08-2465432Update dependencies
0.0.322025-08-1064860Update dependencies
0.0.312025-08-0264324Update dependencies
0.0.302025-07-2764091Update dependencies
0.0.292025-07-1963637Update dependencies
0.0.282025-07-1263192Update dependencies
0.0.272025-07-0562750Update dependencies
0.0.262025-06-2862239Update dependencies
0.0.252025-06-2161780Update dependencies
0.0.242025-06-1561196Update dependencies
0.0.232025-05-2460745Update dependencies
0.0.222025-05-1060006Update dependencies
0.0.212025-05-0459556Update dependencies
0.0.202025-04-2658946Update dependencies
0.0.192025-04-1958568Update dependencies
0.0.182025-04-1358050Update dependencies
0.0.172025-04-0557402Update dependencies
0.0.162025-03-2956901Update dependencies
0.0.152025-03-2256297Update dependencies
0.0.142025-03-0855593Update dependencies
0.0.132025-03-0155140Update dependencies
0.0.122025-02-2254494Update dependencies
0.0.112025-02-1554027Update dependencies
0.0.102025-02-0853564Update dependencies
0.0.92025-02-0153044Update dependencies
0.0.82025-01-2552424Update dependencies
0.0.72025-01-1852008Update dependencies
0.0.62025-01-1151432Update dependencies
0.0.52024-12-2850763Update dependencies
0.0.42024-12-2150361Update dependencies
0.0.32024-12-1449743Update dependencies
0.0.22024-12-1249433Update dependencies
0.0.12024-10-2146378Initial release by @bishalbera via Connector Builder