User guide
Security, privacy, and troubleshooting
Most customer records carry an organization ID. Signed-in requests resolve an active organization, verify membership or authorized partner access, and scope reads and writes to…
Updated September 28, 2026
On this page
How Tailwin separates customer data
Most customer records carry an organization ID. Signed-in requests resolve an active organization, verify membership or authorized partner access, and scope reads and writes to that organization. Partner act-into-client actions and privileged impersonation are audited.
Public pages use bounded tokens or public IDs for a specific purpose, such as report sharing, proposal acceptance, content approval, a receipt, a job application, or a concierge widget. A public token is access: revoke it when exposed.
Secret handling
- Store platform credentials in the deployment secret manager.
- Store customer connector credentials through Tailwin’s encrypted connection or source fields.
- Never place real values in Markdown, screenshots, source code, or chat transcripts.
- MCP, webhook, widget, ingest, and share secrets should be scoped and revocable.
- After a visible credential is shared, rotate it even if it was shared with an authorized operator; screenshots and chat histories persist.
Privacy boundaries
Tailwin intentionally avoids visitor fingerprinting, session replay, form-field capture, and default person identification. Crawler tracking records bot request metadata, not bodies. Talent has retention and deletion behavior. Cross-organization benchmarks require opt-in and a minimum cohort.
The customer remains responsible for notices, consent, data-processing terms, content rights, employment review, and lawful third-party account access.
General troubleshooting sequence
- Confirm the active organization, site, and date range.
- Read the explicit status or reason; do not translate missing into zero.
- Confirm the relevant source, credential, and account ID.
- Confirm the web and worker versions match.
- Check whether the action is synchronous or queued.
- Review the source’s last sync/error or the relevant operational log.
- Retry once only when the action is idempotent or free. Paid Press, SERP, and other vendor operations require their specific recovery procedure.
- Capture the time, organization ID, site/source ID, route, and error without including secrets.
Common problems
| Problem | Likely cause | Next step |
|---|---|---|
| UI works but scheduled work does not | Worker stopped, stale image, or Redis unavailable | Check worker health and ensure web and worker run the same release |
| Source remains empty | First sync did not finish, account lacks scope, or wrong org | Review source status and last error in the owning client org |
| AI scan is plausible but not real | Development mock mode enabled | Confirm runtime engine mode and health before using the result |
| DataForSEO research returns 503 | Platform credentials absent | Configure and restart, or use labeled Search Console fallback |
| Rank check appears stuck | Standard Queue result still pending | Allow the bounded polling window; use the task ledger before retrying |
| Crawler hits absent | Client-side install or CDN bypass | Move detection to edge/origin and run live verification |
| Public share reveals too much | Dashboard/source/audience mistake | Revoke the token immediately, correct the dashboard, issue a new token |
| Checkout succeeds but plan does not change | Stripe webhook path, signing secret, or event setup is wrong | Inspect webhook delivery and entitlement processing |
Report a problem
Provide:
- what you expected and what occurred;
- exact time and timezone;
- organization, site, source, or dashboard identifier;
- the page or operation;
- safe error text and a redacted screenshot;
- whether a retry occurred and whether the action could incur cost.
Do not provide passwords, API keys, authorization headers, raw cookies, webhook secrets, or unredacted personal data.