Developer docs
Consent and customer control
A customer approves specific words for specific uses. They can see where their story appears and change their mind later from a private link. Nothing here needs a YouSaid account.
What a customer approves
Consent is recorded as a grant tied to one exact version of the story, one version of your consent template and one scope. The customer's approval is checked against a hash of the words they saw and produces a receipt hash. A grant never covers a different version.
| Scope | Values |
|---|---|
| Channels | website, in_app, email, sales, social_organic, paid_ads, case_study, press. |
| Identity shown | Display mode (full name, first name and last initial, initials, role and company only, verified anonymous, anonymous, organization) and individual fields such as role, company, portrait, logo or location. |
| Products | Which of your products may show it. Proof reaches another product's placement only when the grant covers that product. |
| Media | text, audio, video or image. |
| Paid use | Off unless the customer allows it. Paid ads always need the customer's own permission; imported or platform consent never covers them. |
| Translation | Off unless allowed. A translation is a new version that the customer approves separately. |
| Geography and dates | Optional regions and a validity window. A lapsed grant stops authorizing new renders. |
The customer can narrow what you proposed (fewer channels, less identity, no paid use) but can never widen it. Your flow proposes the scope; the default proposal is website and in-app, no paid use, no translation.
Consent templates
Each flow shows a consent template. Templates are versioned and immutable: editing one publishes a new version, and every grant records the version it was given under. A flow cannot propose public channels without a template. Workspace owners and admins publish template versions. The default template says the customer allows use of the exact words and media they approve, with the name and details they select, on the channels they select; that they can review, correct or withdraw at any time; that withdrawal removes the story from every YouSaid placement and turns copies placed elsewhere into removal tasks; and that any reward is for taking part and never depends on what they say.
Edits and re-approval
- The original submission never changes. Edits create new versions with a recorded difference.
- A version needs the customer's approval again when numbers change, an evidence-locked claim changes, or the edit is material.
- Claims marked as AI-inferred, or whose evidence has lapsed, keep a version out of every placement.
The customer's control page
After submitting, the customer receives a private control link (valid 400 days; approval links sent later are valid 30 days). From it they can:
- see each story, the versions awaiting approval, and every place it is in use, including uses outside YouSaid that your team recorded;
- approve or decline exact wording, optionally narrowing the scope;
- request a correction, which becomes a task for your team, and read your reply;
- pause a grant, or withdraw one story or all of them at once;
- remove a story from a single placement, or opt out of experiments;
- download a JSON receipt of versions, consent receipts, uses and revocations, and a signed Consent Passport covering all your products.
The link secret travels in a request header, not in the URL, and is stored only as a hash.
Withdrawal
Withdrawal is one action with a preview of its impact. It revokes every grant for the story, marks it revoked, removes it from every YouSaid placement, invalidates cached renders and records a receipt. YouSaid surfaces stop showing it within five minutes. Copies your team placed outside YouSaid (exports, uploaded ads, CMS pages) become removal tasks for your team, and a proof.consent.revoked webhook is sent so your systems can act. Revocation is final: a revoked story or grant cannot be reinstated; the customer would submit and approve again.
Agents and service keys cannot revoke directly. They can only file a revocation request that a teammate with consent authority completes.
Requests and opting out
- Every request email says nothing is published without the customer's approval and includes a link to stop being asked. A request gets at most one reminder.
- Opting out, "never ask", restricted processing and a recent detractor score block further asks across all your products. Open support issues and quiet periods delay them.
- An in-app prompt respects the same limits on the server, across devices and products.