Skip to main content
Weelkit generates every article against a versioned article output contract. The contract determines exactly which fields the generator must produce, and the destination determines what happens to the finished article. Weelkit supports three publishing-contract modes.

Schema-backed destination

WordPress, WordPress.com, Sanity, Ghost and Custom API. Weelkit discovers the remote schema and publishes into it.

API webhook destination

No remote schema. Weelkit signs and delivers the persisted article version to your endpoint.

No destination

The same organization contract, with no external dispatch.

Providers

Connect a CMS in Organization settings → CMS: WordPress (self-hosted, with the Weelkit Plugin), WordPress.com, Sanity, Ghost or a Custom API. Managing Editors open the CMS connection from Organization settings → Integration. The API webhook is set up in Organization settings → Integrations → API Webhook for Admins. A connection to a provider Weelkit no longer offers shows Provider unavailable; you can only disconnect it, and the content it published stays where it is.

Mode A: schema-backed destination

Use this mode when the destination exposes a content schema Weelkit can discover: WordPress, WordPress.com, Sanity, Ghost, or a Custom API that implements the Weelkit custom publishing protocol. Setup runs in a fixed order. Nothing is sent before an administrator has saved the mapping that defines what Weelkit writes.
1

Connect

In Organization settings → CMS, choose Connect CMS and the provider. Then authenticate: the Weelkit Plugin token for WordPress, sign-in with WordPress.com, the API token for Sanity, the Admin API key for Ghost, or the API key for a Custom API.
2

Choose the destination

Pick what Weelkit publishes into: the site (WordPress.com), and the post, document or content type.
3

Review the field mapping

Weelkit discovers the destination’s fields and suggests how Weelkit’s article fields and your organization’s custom fields map onto them. Review and adjust every suggestion, then choose Save mapping. Only the saved mapping, never the raw discovery, decides what Weelkit generates and sends.
4

Choose publishing defaults

Set the Default status (Draft or Published) and what happens When the article already exists: Ask before updating, Always update existing or Always create a new item. Changing the mapping or the defaults means verifying again.
5

Verify a test draft

Choose Verify test draft. Weelkit uses the saved mapping to publish a draft and read it back, and shows the result field by field. You can inspect the draft in your CMS, or choose Delete draft.
6

Send articles

The connection is ready. In the editor, the CMS button sends the current article with the saved default: Send draft to CMS or Publish to CMS. See Send to your CMS.
Every send keeps its original request identity and saved article version. If Weelkit can’t confirm whether your CMS received it, choose Check original CMS send before starting another send. Retry saved CMS send checks or retries that original request according to the destination’s capabilities. With Ask before updating, sending an article already in your CMS opens a confirmation. Choose Update article to update that item with the saved version prepared for this send, or Cancel to leave it unchanged. Later edits need another send. The result says Updating… while sending, then Updated after success. See Send to your CMS. A new send follows the saved create/update choice even if the content is unchanged. Checking the original send returns its original result rather than creating another item.
Discovered fields are suggestions only. They never enter what Weelkit generates until an administrator saves the mapping. Likewise, organization custom fields never reach a CMS unless an administrator has explicitly mapped them.

Defaults and choices

In the mapping, use Default value to set a value of the field’s actual type. Numbers, booleans, arrays and objects keep their types; 0 and false are valid defaults. Clear default value returns the field to No default. In a JSON editor, text includes quotes: "3" is text and 3 is a number. Choose Value list for a schema-declared list. Its members must match the CMS field: text, numbers, integers, booleans or the declared combination. An empty list stays []; the CMS decides whether it is valid. Custom API lists contain text only. A required value can be empty only when its declared minimum allows it. This includes intentional empty alternative text for a decorative image. Missing required values still block sending. For a custom choice field, Allowed options (JSON) uses text values, for example [{"label":"News","value":"news"}]. The label is optional. Defaults and choices must fit every selected CMS field’s constraints. Invalid JSON or incompatible values prevent the mapping from being saved. Mappings keep exact field paths, including letter case. WordPress refuses a send when its storage cannot keep the selected keys distinct. If a numeric input says Weelkit cannot preserve this number exactly., the value is not saved. Correct it only if another value is acceptable, or change the destination field to text when the exact digits must be kept. Weelkit does not round it for you. If the same error appears after Saved or Mapping saved., the save remains accepted. Further edits and CMS sends wait for a safe read; use Retry when the mapping offers it. Choice labels gain (text), (number), (boolean) or (null) when identical labels would hide different value types. Distinct CMS labels stay unchanged. AI cannot preserve an object key named __proto__. It stops and asks you to set the value manually in the article editor’s JSON field; it does not save an object with that key missing.

After you send

An article’s status in Weelkit follows the CMS. You publish, schedule or unpublish in your CMS, and Weelkit picks up the change: Archived is a Weelkit-only status: the CMS never changes it, and a restored article takes its status from the CMS again. Weelkit checks an article’s status when someone opens it, and keeps checking in the background: every few minutes right after a send, then less often as the article gets older, down to once a day for published articles. A scheduled post is checked again when it’s due to go live. There’s no button to refresh the status. When an article is live, Weelkit records its public address. Edit, preview and admin links are never used as the address. Your sitemap (Organization settings → Organization → Public Website Index) confirms the address, and gives it for Sanity and Custom API items that don’t report one.
For WordPress, update the Weelkit Plugin to version 0.6.0 or later. It lets Weelkit check many posts in one request, so status changes show up sooner. Older versions with a compatible publishing contract are checked one post at a time, less often. If setup asks you to update the plugin, update it before continuing.

Reconnect or disconnect

When a CMS connection needs fresh authorization, choose Reconnect. Reauthorizing the same destination preserves its saved mapping and published links. Choose Test connection to check a key that was changed in the CMS. Disconnect removes the local credentials and setup; it does not delete posts in your CMS. Resolve any pending or unconfirmed send or test-draft cleanup before disconnecting. A different site, dataset or destination needs its own connection and mapping review.

Mode B: API webhook destination

Use this mode when you want the article delivered to your own system without a remote schema. There is nothing to discover: the contract is the canonical Weelkit article fields plus your organization’s active custom fields.
1

Generate

Weelkit generates the article against the organization contract.
2

Validate

The output is validated against the contract before anything is stored.
3

Persist the article version

The validated article is persisted as an immutable article version.
4

Signed delivery

Weelkit delivers the authoritative persisted version — not a re-rendering — to your endpoint with an HMAC signature. See Webhook payload.
5

Typed receipt

Your response is interpreted under strict, typed receipt semantics. See Receipts and retries.

Mode C: no destination

Articles are generated and persisted against the same organization contract as mode B — canonical fields plus active organization custom fields — but Weelkit performs no external dispatch. Use this mode when Weelkit is the system of record, or before you have decided on a destination.

Where to go next

Organization article fields

Extend the canonical article contract with your own governed fields.

Testing integrations

Verify a destination safely before real content flows through it.

Set up an API webhook

Deliver signed article versions to your own endpoint.

Custom API protocol

Make your own API a first-class schema-backed destination.