Access and gates

set_paid_access

Create or update one paid access offer (GBP only): omit offer_id to create, pass it to update. protected_paths is a FULL REPLACEMENT, selected_pages only. access_days sets the access length in whole days, or null for lifetime. buyer_audience picks the checkout compliance flow: consumers_allowed (default on create) keeps the consumer disclosure and cancellation layer and requires the account's public seller details (get_seller_details / set_seller_details) before a live offer is accepted; business_only asks the buyer to confirm a business purchase instead and needs no seller address. Pick it from who the creator actually intends to sell to, never to bypass consumer rules. Omitting buyer_audience on update leaves it unchanged. Side effect: saving a SITE-WIDE offer (entire_site or except_homepage) also makes paid the site's configured primary gate, so a separate set_gate_access is not needed; selected_pages offers never change the primary gate, and archiving the last site-wide offer falls back to the stored classic gate. publish_site is still required before visitors see it. Buyer requirements: set_paid_access_requirements and set_paid_access_password. Needs a Stripe account that can take payments (get_commerce_setup, create_stripe_connect_link) and editor role.

Behaviour

Effect
Destructive. It can remove or overwrite existing data.
Repeat calls
Idempotent. Repeating the same call produces the same result.
Plan
Pro plan required (Paid Access).

Parameters

NameTypeRequiredDescription
request_idstringYes-
site_iduuidYesSite UUID from list_sites.
offer_iduuidNoOmit to create a new offer; pass to update an existing one.
titlestringYes-
descriptionstring or nullNo-
price_minorintegerYesPrice in GBP minor units (pence). Minimum 100 (£1.00). Whole pence only.
protection_scopeenum
entire_site | except_homepage | selected_pages
YesWhat visitors pay for. selected_pages REQUIRES protected_paths; the other two REJECT it.
protected_pathsarray of stringNoFULL REPLACEMENT list of leading-slash paths to lock, each existing on the newest version. selected_pages only.
access_daysinteger or nullNoAccess length in whole days, or null for lifetime access.
buyer_audienceenum
business_only | consumers_allowed
NoWho may buy. consumers_allowed keeps the consumer disclosure and cancellation layer; business_only asks the buyer to confirm a business purchase instead. Omit on update to leave it unchanged; omit on create for the safe consumers_allowed default.
statusenum
live | paused | archived
NoOptional lifecycle change applied after the write.

Returns

NameType
site_idstring
offer_idstring
statusstring
protection_scopeenum
entire_site | except_homepage | selected_pages
publish_requiredboolean
published_primary_gateenum
classic | paid
configured_primary_gateenum
classic | paid
idempotency_replayboolean

Using it

set_paid_access is called by an AI assistant connected to Sentway over MCP, not by hand. Point the assistant at the Sentway MCP endpoint and complete the OAuth flow, and the tool becomes available in the same session as the other 56 Sentway tools. See connecting over MCP.