Webflow Integration
How to connect SitePulse to Webflow using OAuth 2.1 + PKCE — patching CMS item metadata, image alt text, and SEO fields.
SitePulse connects to Webflow via OAuth 2.1 with PKCE — the same authorization flow Webflow uses for its own integrations marketplace. No API keys are exposed; the OAuth access token is stored encrypted per project.
Prerequisites
- A Webflow site on a paid plan (the free plan does not include CMS API access)
- The audited page must be a CMS Collection item (not a static Designer page) for CMS field patching
- You must be a Site Admin or Editor on the Webflow site
Connect Webflow in SitePulse
- Go to your project → Settings → Integrations.
- Click Connect Webflow.
- You will be redirected to Webflow's authorization page. Review the requested scopes and click Authorize.
- SitePulse receives the authorization code and exchanges it for an access token via the PKCE flow.
- After authorization, you are redirected back to SitePulse and the integration shows as Connected.
OAuth scopes requested
SitePulse requests the following Webflow OAuth scopes:
| Scope | Purpose |
|---|---|
cms:read | Read CMS collection schemas and item data |
cms:write | Update CMS item fields (metadata, alt text, SEO fields) |
sites:read | Enumerate sites and pages available in the account |
No publishing scopes are requested — SitePulse updates CMS item drafts, not live published content. You publish changes manually in Webflow after reviewing.
What SitePulse can patch
| Field | API call | Notes |
|---|---|---|
| SEO title | PATCH /collections/{id}/items/{id} → seo-title | Field name may vary by collection schema |
| SEO description | PATCH /collections/{id}/items/{id} → seo-description | Field name may vary |
| Image alt text | PATCH /collections/{id}/items/{id} → image field alt | Only for image field types |
| CMS item name | PATCH /collections/{id}/items/{id} → name | Used for H1 fallback |
Webflow's CMS schema uses custom field slugs. SitePulse inspects the collection schema at connection time to discover the correct field slug for each patch type.
Designer pages vs CMS collection items
Webflow has two types of pages:
- Static Designer pages — built entirely in the Designer with no CMS backing. SitePulse can audit these but cannot patch them via the API (no CMS item to update). You must apply changes manually in the Designer.
- CMS Collection items — content stored in a CMS collection and rendered through a collection template. SitePulse can patch these via the CMS API.
If the audited URL is a static Designer page, the CMS Patches tab will show "Not a CMS item — apply manually" for content-type patches. Metadata patches (SEO title, meta description) may still be patchable via Webflow's page SEO settings API.
Structured data limitation
Webflow's CMS API does not support injecting <script> elements into the page <head> via API. For JSON-LD structured data patches (structured_data, faq_schema, howto_schema), SitePulse generates the JSON-LD block and shows it as a copy-paste snippet. You apply it by:
- Opening the page in the Designer.
- Adding an Embed element in the
<head>(via Page Settings → Custom Code → Head Code). - Pasting the JSON-LD
<script>block.
Disconnecting Webflow
To revoke SitePulse's access, go to Project Settings → Integrations and click Disconnect Webflow. You can also revoke access directly in your Webflow Account Settings → Authorized Apps.
Publish after patching
SitePulse updates CMS items as drafts — the changes are saved but not published. After reviewing the patches in Webflow's Designer or CMS editor, publish the site to make the changes live. Then run a new SitePulse audit to measure the score impact.