All docs
WordPress setup
Credential: Application password
The WordPress connector creates draft posts over the official REST API, authenticated with an application password. There is no plugin to install, and nothing goes live until you publish in wp-admin.
Requirements
- WordPress 5.6 or newer (application passwords shipped in 5.6).
- HTTPS. WordPress refuses application-password authentication over plain HTTP.
- REST API reachable at
{your-site}/wp-json/- the default unless a security plugin blocks it. - A user with permission to create posts (Author role or above; Editor if BirchSeek should manage categories).
Step 1 - generate an application password
- Log in to wp-admin as the user BirchSeek should post as - the posts’ author will be this user.
- Open Users → Profile and scroll to Application Passwords.
- Enter
BirchSeekas the application name and click Add New Application Password. - Copy the generated password immediately - WordPress shows it once. It looks like
abcd EFGH 1234 ijkl MNOP 5678; the spaces are cosmetic, and BirchSeek accepts it with or without them.
No Application Passwords section? The site is on HTTP, running WordPress older than 5.6, or a security plugin has disabled the feature.
Step 2 - connect in BirchSeek
In onboarding (or Connectors → WordPress later), enter:
| Setting | Meaning |
|---|---|
| Site URL | Your site’s root, e.g. https://example.com |
| Username | The wp-admin username (not the email, unless your login uses it) |
| Application password | The value from step 1 |
| Default status | draft (recommended) or publish |
| Default category | Optional; resolved or created by name |
Step 3 - send a test
Send a test makes one read-only call, GET /wp-json/wp/v2/users/me?context=edit, so a wrong username, revoked password, or blocked REST API fails with the site’s own error message. context=edit is the part that matters: it is what makes WordPress return the account’s capabilities, so the same call also proves the user can create and edit posts, and, if you set the default status to publish, that it can publish them. The result names the connected user and says which of those it can do.
The test creates nothing. No post, no draft, no category. The first thing BirchSeek writes to your site is your first approved article.
What BirchSeek writes
Per article, via POST /wp-json/wp/v2/posts:
title,content(rendered HTML),slug,excerptstatus-draftby default; your callcategoriesandtags- resolved by name, created if missing
content ends with a ## Sources block: a numbered list pairing each verified claim with the page it was checked against, rendered into the HTML like any other section. BirchSeek composes that body once, before any connector sees it, so every connector publishing to your own site writes the same block - there is nothing to append yourself. (A syndicated copy to dev.to, Hashnode or Medium carries the same block, and the canonical link back to your page besides. That copy is not covered by the project setting: those three platforms have no citation field of their own, so the body is the only place the evidence can travel.) The block is on by default, and there is no switch for it in the dashboard: it is a project setting called append_sources_section, and the only way to change it today is PATCH /v1/projects/{id} carrying the whole settings object, because that request replaces the object rather than merging into it.
Yoast and RankMath fields
Yoast and RankMath store their title and description in post meta that is not writable over the REST API by default: WordPress drops meta keys a plugin has not registered for REST. BirchSeek writes core fields only, so neither plugin’s fields are filled in for you.
The meta description does reach the post, as the native excerpt. The meta title reaches WordPress on no field at all - this is the one connector that does not send it. Both values are on the article in BirchSeek, so copy them from the review screen into the plugin’s fields while the draft is open. If your site does register those meta keys for REST, email contact@birchseek.com and we’ll enable direct meta writing for your connection.
Security notes
- The application password is stored encrypted at rest and is used only against your own site’s REST API, for the calls listed here.
- Revoke it anytime in wp-admin (Users → Profile → Application Passwords → Revoke) and access ends immediately.
- BirchSeek reads only where publishing needs it: the credential check above, a lookup of
wp/v2/postsby slug before each publish so a retry updates the draft it already made instead of adding a second one, and a search ofwp/v2/categoriesandwp/v2/tagsto resolve your terms by name. It reads no other part of your site.
Troubleshooting
rest_cannot_create- the user’s role can’t create posts. Use an Author-or-above account.401at connect time - wrong username, or the application password was revoked. Note: some hosts strip theAuthorizationheader; ask your host to allow it (or enable it in.htaccess).- Categories not applied - the connecting user needs Editor rights to create new categories; existing ones resolve fine for Authors.
- REST API blocked - security plugins (or Cloudflare rules) sometimes block
/wp-json/. Allow authenticated requests towp/v2/users/me,wp/v2/posts,wp/v2/categoriesandwp/v2/tags.