The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.
Work through this checklist before your app goes live. Each section is one rule for the Client Secret, OAuth tokens, webhook signatures, logging or user data, and names the Builder SDK helper that implements it if you use the SDK. It assumes your app already signs users in through OAuth.Fanvue secures the platform and the OAuth flow. You secure your app, your server, and the credentials and tokens you hold.
Protect your client secret
The Client Secret lets your app exchange authorisation codes for access tokens. Treat it like a password.
Keep the Client Secret on your server only. A secret in client-side code, a browser, a mobile binary or a public repository lets anyone obtain tokens as your app.
The secret is shown once, at creation. Store it in a secrets manager or an environment variable, never in source control.
If it leaks, click Reset secret on the Authentication tab. That issues a new secret and invalidates the old one at once, so deploy the new value in the same change. See Managing your OAuth client secret.
Use OAuth, don’t roll your own
Fanvue authenticates users through OAuth 2.0 with PKCE, a proof step that stops an intercepted authorisation code from being reused, so your app never sees a user’s Fanvue password. Don’t build your own login against Fanvue; use the flow in Authentication overview.
Request the least scope you need
Request only the scopes your features use; a read-only reporting app has no need for write:* scopes. Narrow scopes limit the damage if a token is compromised, and they shorten the consent screen. See Scopes.
Handle tokens carefully
Keep access tokens and refresh tokens server-side. Don’t expose them to the browser.
Access tokens are short-lived. Refresh them with the refresh token rather than sending the user back through login.
Store tokens encrypted at rest, keyed to the user they belong to. The SDK’s createFanvueCrypto seals and opens token strings with a current key and optional previous keys, so you can rotate the encryption key without re-authorising users. See SDK storage and security.
Give the SDK session signer a SESSION_SECRET of at least 32 characters; it refuses a shorter one.
Verify every webhook
Verify X-Fanvue-Signature on every delivery before you act on it; without the check, anyone who finds your webhook endpoint can send you fabricated events. In the SDK, verifyWebhookHmac with fanvueSignatureContract() does the check, and Verify webhook signatures explains the scheme.
Handle user data responsibly
Read and store only the data your scopes and your feature need.
Never log tokens, secrets or personal data. The SDK’s createSafeLogFields keeps only allowlisted log keys, and createSentryScrubber redacts values under keys that match authorization, cookie, token, secret, password, email, phone and similar names before an error report leaves your process.
Show users a generic error message and log the detail server-side.
Serve your app over HTTPS so tokens and data are encrypted in transit.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Fanvue API Documentation","colors":{"primary":"#418326","light":"#ADFF8C","dark":"#418326"},"logo":{"light":"https://mintcdn.com/fanvue-bad99af4/dtEplVgXFkLaret8/images/logo-light.svg?fit=max\u0026auto=format\u0026n=dtEplVgXFkLaret8\u0026q=85\u0026s=6756e139f7ac586749dced60571ca7fd","dark":"https://mintcdn.com/fanvue-bad99af4/dtEplVgXFkLaret8/images/logo-dark.svg?fit=max\u0026auto=format\u0026n=dtEplVgXFkLaret8\u0026q=85\u0026s=010dc52e39deb4e87206e543e239069c","href":"/"},"favicon":"https://mintcdn.com/fanvue-bad99af4/C0sjSQCXSDawEi8k/images/favicon.svg?fit=max\u0026auto=format\u0026n=C0sjSQCXSDawEi8k\u0026q=85\u0026s=ec3aee67b0ba0a7d91ce7ce6779eae5f","api":{"playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["curl","python","javascript"],"prefill":true}},"appearance":{"default":"dark"},"background":{"decoration":"gradient"},"navbar":{"links":[{"icon":"discord","href":"https://discord.gg/dZe3tqVTq4","label":"Join Community"},{"href":"/changelog","label":"Changelog"}]},"footer":{"socials":{"website":"https://www.fanvue.com","discord":"https://discord.gg/dZe3tqVTq4"},"links":[{"header":"Resources","items":[{"label":"Changelog","href":"https://api.fanvue.com/docs/changelog"},{"label":"Join Community","href":"https://discord.gg/dZe3tqVTq4"}]},{"header":"Legal","items":[{"label":"Terms \u0026 Conditions","href":"https://legal.fanvue.com/terms-conditions"},{"label":"Privacy Policy","href":"https://legal.fanvue.com/privacy-policy"}]}]},"seo":{"metatags":{"og:title":"Fanvue API Documentation","og:description":"Build on Fanvue - the creator subscription platform for the future.","og:image":"images/og-image.jpg","twitter:card":"summary_large_image","twitter:title":"Fanvue API Documentation","twitter:description":"Build on Fanvue - the creator subscription platform for the future.","twitter:image":"images/og-image.jpg"},"indexing":"all"},"contextual":{"options":["copy","view","chatgpt","claude","mcp"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"fanvue-bad99af4","hasAudioNarration":false,"actualSubdomain":"fanvue-bad99af4","customDomains":["api.fanvue.com"],"gitSource":{"type":"github","owner":"fanvue","repo":"styx-docs-mintlify","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af70740e0d078336552cc8d","clientVersion":"0.0.4138","searchFilterCounts":[{"language":"default","tag":"API Reference","count":557},{"language":"default","tag":"Agency","count":271},{"language":"default","tag":"Chats","count":121},{"language":"default","tag":"UI Library","count":95},{"language":"default","tag":"Creator tools","count":88},{"language":"default","tag":"Creator chats","count":61},{"language":"default","tag":"Posts","count":42},{"language":"default","tag":"Webhooks","count":40},{"language":"default","tag":"Insights and earnings","count":31},{"language":"default","tag":"Media","count":28}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#sidebar button[aria-expanded]{justify-content:space-between}div.card:not(:has(img)){background-color:#eef0f2!important;border-color:transparent!important;box-shadow:none!important;cursor:default}.dark div.card:not(:has(img)){background-color:rgba(255, 255, 255, 0.06)!important}div.card:has(img){border-color:transparent!important}div.card:has(img):hover{border-color:rgba(0, 0, 0, 0.55)!important}.dark div.card:has(img):hover{border-color:rgba(255, 255, 255, 0.82)!important}@media (min-width: 1024px){[class*=\"page-header:flex\"]{display:flex!important;align-self:flex-start!important}[class*=\"page-header:hidden\"]{display:none!important}}"}],"page":{"pagePath":"tutorials/security","slug":"/tutorials/security","pageMetadata":{"title":"Secure your integration","sidebarTitle":"Security","description":"The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.","href":"/tutorials/security"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Work through this checklist before your app goes live. Each section is one rule for the Client Secret, OAuth tokens, webhook signatures, logging or user data, and names the Builder SDK helper that implements it if you use the SDK. It assumes your app already signs users in through OAuth.`}),`\n`,_jsx(_components.p,{children:`Fanvue secures the platform and the OAuth flow. You secure your app, your server, and the credentials and tokens you hold.`}),`\n`,_jsx(Heading,{level:`2`,id:`protect-your-client-secret`,children:`Protect your client secret`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Client Secret`}),` lets your app exchange authorisation codes for access tokens. Treat it like a password.`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Keep the Client Secret on your server only. A secret in client-side code, a browser, a mobile binary or a public repository lets anyone obtain tokens as your app.`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The secret is shown once, at creation. Store it in a secrets manager or an environment variable, never in source control.`}),`\n`,_jsxs(_components.li,{children:[`If it leaks, click `,_jsx(_components.strong,{children:`Reset secret`}),` on the `,_jsx(_components.strong,{children:`Authentication`}),` tab. That issues a new secret and invalidates the old one at once, so deploy the new value in the same change. See `,_jsx(_components.a,{href:`/authentication/implementation-guide#managing-your-oauth-client-secret`,children:`Managing your OAuth client secret`}),`.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`use-oauth-don’t-roll-your-own`,children:`Use OAuth, don’t roll your own`}),`\n`,_jsxs(_components.p,{children:[`Fanvue authenticates users through OAuth 2.0 with PKCE, a proof step that stops an intercepted authorisation code from being reused, so your app never sees a user’s Fanvue password. Don’t build your own login against Fanvue; use the flow in `,_jsx(_components.a,{href:`/authentication/overview`,children:`Authentication overview`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`request-the-least-scope-you-need`,children:`Request the least scope you need`}),`\n`,_jsxs(_components.p,{children:[`Request only the scopes your features use; a read-only reporting app has no need for `,_jsx(_components.code,{children:`write:*`}),` scopes. Narrow scopes limit the damage if a token is compromised, and they shorten the consent screen. See `,_jsx(_components.a,{href:`/authentication/scopes`,children:`Scopes`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`handle-tokens-carefully`,children:`Handle tokens carefully`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Keep `,_jsx(_components.strong,{children:`access tokens`}),` and `,_jsx(_components.strong,{children:`refresh tokens`}),` server-side. Don’t expose them to the browser.`]}),`\n`,_jsx(_components.li,{children:`Access tokens are short-lived. Refresh them with the refresh token rather than sending the user back through login.`}),`\n`,_jsxs(_components.li,{children:[`Refresh tokens are single-use and rotate on every refresh, so store the new one every time; see `,_jsx(_components.a,{href:`/authentication/overview#refresh-tokens-rotate-and-are-single-use`,children:`Refresh tokens rotate and are single-use`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Store tokens encrypted at rest, keyed to the user they belong to. The SDK’s `,_jsx(_components.code,{children:`createFanvueCrypto`}),` seals and opens token strings with a current key and optional previous keys, so you can rotate the encryption key without re-authorising users. See `,_jsx(_components.a,{href:`/app-store/sdk/storage-and-security`,children:`SDK storage and security`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Give the SDK session signer a `,_jsx(_components.code,{children:`SESSION_SECRET`}),` of at least 32 characters; it refuses a shorter one.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`verify-every-webhook`,children:`Verify every webhook`}),`\n`,_jsxs(_components.p,{children:[`Verify `,_jsx(_components.code,{children:`X-Fanvue-Signature`}),` on every delivery before you act on it; without the check, anyone who finds your webhook endpoint can send you fabricated events. In the SDK, `,_jsx(_components.a,{href:`/app-store/sdk/webhooks#verify-signatures`,children:_jsx(_components.code,{children:`verifyWebhookHmac`})}),` with `,_jsx(_components.code,{children:`fanvueSignatureContract()`}),` does the check, and `,_jsx(_components.a,{href:`/webhooks/signature-verification`,children:`Verify webhook signatures`}),` explains the scheme.`]}),`\n`,_jsx(Heading,{level:`2`,id:`handle-user-data-responsibly`,children:`Handle user data responsibly`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Read and store only the data your scopes and your feature need.`}),`\n`,_jsxs(_components.li,{children:[`Never log tokens, secrets or personal data. The SDK’s `,_jsx(_components.code,{children:`createSafeLogFields`}),` keeps only allowlisted log keys, and `,_jsx(_components.code,{children:`createSentryScrubber`}),` redacts values under keys that match `,_jsx(_components.code,{children:`authorization`}),`, `,_jsx(_components.code,{children:`cookie`}),`, `,_jsx(_components.code,{children:`token`}),`, `,_jsx(_components.code,{children:`secret`}),`, `,_jsx(_components.code,{children:`password`}),`, `,_jsx(_components.code,{children:`email`}),`, `,_jsx(_components.code,{children:`phone`}),` and similar names before an error report leaves your process.`]}),`\n`,_jsx(_components.li,{children:`Show users a generic error message and log the detail server-side.`}),`\n`,_jsx(_components.li,{children:`Serve your app over HTTPS so tokens and data are encrypted in transit.`}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Secure your integration","sidebarTitle":"Security","description":"The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.","href":"/tutorials/security"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Protect your client secret","slug":"protect-your-client-secret","depth":2,"children":[]},{"title":"Use OAuth, don’t roll your own","slug":"use-oauth-don’t-roll-your-own","depth":2,"children":[]},{"title":"Request the least scope you need","slug":"request-the-least-scope-you-need","depth":2,"children":[]},{"title":"Handle tokens carefully","slug":"handle-tokens-carefully","depth":2,"children":[]},{"title":"Verify every webhook","slug":"verify-every-webhook","depth":2,"children":[]},{"title":"Handle user data responsibly","slug":"handle-user-data-responsibly","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"fanvue-bad99af4","siteName":"Fanvue API Documentation","title":"Fanvue API Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-09T12:12:30.750Z","originalFileLocation":"tutorials/security.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Fanvue API Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Fanvue API Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Build on Fanvue - the creator subscription platform for the future.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Fanvue API Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://api.fanvue.com/docs/tutorials/security\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://fanvue-bad99af4.mintlify.site/docs/images/og-image.jpg\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Fanvue API Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Build on Fanvue - the creator subscription platform for the future.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://fanvue-bad99af4.mintlify.site/docs/images/og-image.jpg\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/fanvue-bad99af4/iiC2ecfj0oZDHNDc/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Fanvue API Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#418326\">\u003clink data-mint-head rel=\"canonical\" href=\"https://api.fanvue.com/docs/tutorials/security\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/tutorials/security.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://api.fanvue.com/#organization\",\"name\":\"Fanvue API Documentation\",\"url\":\"https://api.fanvue.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/fanvue-bad99af4/dtEplVgXFkLaret8/images/logo-light.svg?fit=max\u0026auto=format\u0026n=dtEplVgXFkLaret8\u0026q=85\u0026s=6756e139f7ac586749dced60571ca7fd\"}},{\"@type\":\"WebSite\",\"@id\":\"https://api.fanvue.com/docs#website\",\"name\":\"Fanvue API Documentation\",\"url\":\"https://api.fanvue.com/docs\",\"publisher\":{\"@id\":\"https://api.fanvue.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://api.fanvue.com/docs/tutorials/security#webpage\",\"url\":\"https://api.fanvue.com/docs/tutorials/security\",\"name\":\"Secure your integration\",\"description\":\"The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.\",\"dateModified\":\"2026-10-09T12:12:30.750Z\",\"isPartOf\":{\"@id\":\"https://api.fanvue.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://api.fanvue.com/docs/tutorials/security#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://api.fanvue.com/docs/tutorials/security#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Authentication\",\"item\":\"https://api.fanvue.com/docs/authentication/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Secure your integration\",\"item\":\"https://api.fanvue.com/docs/tutorials/security\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://api.fanvue.com/docs/tutorials/security#article\",\"headline\":\"Secure your integration\",\"name\":\"Secure your integration\",\"description\":\"The security rules a Fanvue app should meet before it ships, for secrets, tokens, webhook signatures, logging and user data, with the SDK helper for each.\",\"url\":\"https://api.fanvue.com/docs/tutorials/security\",\"mainEntityOfPage\":{\"@id\":\"https://api.fanvue.com/docs/tutorials/security#webpage\"},\"image\":\"https://api.fanvue.com/docs/images/og-image.jpg\",\"dateModified\":\"2026-10-09T12:12:30.750Z\",\"publisher\":{\"@id\":\"https://api.fanvue.com/#organization\"},\"isPartOf\":{\"@id\":\"https://api.fanvue.com/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Fanvue API Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Fanvue API Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/tutorials/security.md","siteName":"Fanvue API Documentation","nav":{"global":null,"tabs":[{"tab":"Get started","groups":[{"group":"Start here","pages":[{"title":"Build on Fanvue","mode":"wide","href":""},{"title":"Build your first Fanvue app","sidebarTitle":"Build your first app","href":"/get-started/build-your-first-app"},{"title":"Choose your app type","href":"/get-started/choose-your-app-type"},{"title":"Sign in with Fanvue using the App Starter","sidebarTitle":"Sign in with Fanvue","href":"/get-started/sign-in-with-fanvue"},{"title":"Test your app before you submit","sidebarTitle":"Test your app","href":"/get-started/test-your-app"},{"title":"New to APIs","href":"/core-concepts/new-to-apis"}]},{"group":"Authentication","pages":[{"title":"Fanvue API authentication with OAuth 2.0 and PKCE","sidebarTitle":"Authentication overview","href":"/authentication/overview"},{"title":"OAuth 2.0 implementation guide for the Fanvue API","sidebarTitle":"Implementation guide","href":"/authentication/implementation-guide"},{"title":"Scopes","href":"/authentication/scopes"},{"title":"Rate limits","description":"How the Fanvue API rate limit is counted per user and OAuth client, which endpoints have their own caps, and how to back off on a 429.","href":"/authentication/rate-limits"},{"title":"Secure your integration","sidebarTitle":"Security","href":"/tutorials/security"}]},{"group":"API concepts","pages":[{"title":"Fanvue object model","sidebarTitle":"Object model","description":"How Fanvue creators, fans, chats, posts, media, lists, experiences and payments relate, how money moves, and which ids join them.","href":"/core-concepts/object-model"},{"title":"API versioning","sidebarTitle":"Versioning","href":"/versions/overview"},{"title":"Moving to v1","sidebarTitle":"Moving to v1","href":"/versions/moving-to-v1"},{"title":"Insights metrics: payment sources, gross vs net, reversals","sidebarTitle":"Insights metrics","href":"/core-concepts/insights-metrics"}]},{"group":"Guides","pages":[{"title":"Read and send messages","sidebarTitle":"Messages","href":"/tutorials/working-with-messages"},{"title":"Reply to unread chats automatically","sidebarTitle":"Automated replies","href":"/tutorials/automated-replies"},{"title":"Keep a local copy of chats in sync","sidebarTitle":"Chat sync","href":"/tutorials/efficient-chat-sync"},{"title":"Send a mass message","sidebarTitle":"Mass messages","href":"/tutorials/sending-mass-messages"},{"title":"Build dynamic lists","sidebarTitle":"Dynamic lists","href":"/tutorials/dynamic-lists"},{"title":"Work with media","sidebarTitle":"Media","href":"/tutorials/working-with-media"},{"title":"Upload media in parts","sidebarTitle":"Upload media","href":"/tutorials/uploading-media"},{"title":"Track clicks and attribute fans with tracking links","sidebarTitle":"Tracking links","href":"/tutorials/tracking-links"}]}]},{"tab":"Fanvue Apps","pages":[{"title":"Fanvue Apps","href":"/app-store/introduction"}]},{"tab":"Payments","pages":[{"title":"Payments","href":"/payments/overview"}]},{"tab":"Webhooks","pages":[{"title":"Webhooks","href":"/webhooks"}]},{"tab":"API Reference","versions":[{"version":"v1","groups":[{"group":"Overview","pages":[{"title":"Fanvue API conventions (v1)","sidebarTitle":"Conventions","href":"/v1/api-reference/overview"},{"title":"Error responses","sidebarTitle":"Errors","href":"/api-reference/errors"}]},{"group":"Popular endpoints","pages":[{"title":"Get current user","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/users/me","href":"/v1/api-reference/get-current-user"},{"title":"Get list of chats (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats","href":"/v1/api-reference/get-list-of-chats-cursor-paginated"}]},{"group":"Account","pages":[{"title":"Get current user","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/users/me","href":"/v1/api-reference/get-current-user"},{"title":"Get current user's account","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/users/account","href":"/v1/api-reference/get-current-users-account"},{"title":"Update subscription price","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/users/me/subscription-price","href":"/v1/api-reference/update-subscription-price"}]},{"group":"Chats","pages":[{"group":"Chats","expanded":false,"pages":[{"title":"Get list of chats (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats","href":"/v1/api-reference/get-list-of-chats-cursor-paginated"},{"title":"Get unread chats, messages, and notifications count","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/unread","href":"/v1/api-reference/get-unread-chats-messages-and-notifications-count"},{"title":"Get a single chat","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/{userUuid}","href":"/v1/api-reference/get-a-single-chat"},{"title":"Get media from a chat","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/{userUuid}/media","href":"/v1/api-reference/get-media-from-a-chat"},{"title":"Create a new chat","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats","href":"/v1/api-reference/create-a-new-chat"},{"title":"Get online statuses for multiple users","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/statuses","href":"/v1/api-reference/get-online-statuses-for-multiple-users"},{"title":"Update chat properties","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/chats/{userUuid}","href":"/v1/api-reference/update-chat-properties"},{"title":"Get fan notes","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/{userUuid}/notes","href":"/v1/api-reference/get-fan-notes"},{"title":"Update fan notes","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/chats/{userUuid}/notes","href":"/v1/api-reference/update-fan-notes"},{"title":"Get messages from a chat","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/{userUuid}/messages","href":"/v1/api-reference/get-messages-from-a-chat"},{"title":"Get a single message","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/{userUuid}/messages/{messageUuid}","href":"/v1/api-reference/get-a-single-message"},{"title":"Resolve media UUIDs for a chat message","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/{userUuid}/messages/{messageUuid}/media","href":"/v1/api-reference/resolve-media-uuids-for-a-chat-message"},{"title":"Send a message","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/{userUuid}/message","href":"/v1/api-reference/send-a-message"},{"title":"Send a typing indicator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/{userUuid}/typing","href":"/v1/api-reference/send-a-typing-indicator"},{"title":"Get messages from multiple chats in bulk","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/messages/batch","href":"/v1/api-reference/get-messages-from-multiple-chats-in-bulk"},{"title":"Delete a message","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/{userUuid}/messages/{messageUuid}","href":"/v1/api-reference/delete-a-message"}]},{"group":"Templates","expanded":false,"pages":[{"title":"Get list of template messages (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/templates","href":"/v1/api-reference/get-list-of-template-messages-cursor-paginated"},{"title":"Get list of template folders (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/templates/folders","href":"/v1/api-reference/get-list-of-template-folders-cursor-paginated"},{"title":"Get a single template message","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/templates/{templateUuid}","href":"/v1/api-reference/get-a-single-template-message"},{"title":"Create or edit a template message","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/templates","href":"/v1/api-reference/create-or-edit-a-template-message"},{"title":"Create a template folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/templates/folders","href":"/v1/api-reference/create-a-template-folder"},{"title":"Rename a template folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/chats/templates/folders/{folderUuid}","href":"/v1/api-reference/rename-a-template-folder"},{"title":"Delete a template message","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/templates/{templateUuid}","href":"/v1/api-reference/delete-a-template-message"}]},{"group":"Automated messages","expanded":false,"pages":[{"title":"List automated messages","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/automated-messages","href":"/v1/api-reference/list-automated-messages"},{"title":"Enable or update an automated message","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/chats/automated-messages/{trigger}","href":"/v1/api-reference/enable-or-update-an-automated-message"},{"title":"Disable an automated message","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/automated-messages/{trigger}","href":"/v1/api-reference/disable-an-automated-message"}]},{"group":"Mass messages","expanded":false,"pages":[{"title":"List mass messages (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/mass-messages","href":"/v1/api-reference/list-mass-messages-cursor-paginated"},{"title":"Send a mass message","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/mass-messages","href":"/v1/api-reference/send-a-mass-message"},{"title":"Update a scheduled mass message","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/chats/mass-messages/{messageUuid}","href":"/v1/api-reference/update-a-scheduled-mass-message"},{"title":"Delete a mass message","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/mass-messages/{messageUuid}","href":"/v1/api-reference/delete-a-mass-message"}]},{"group":"Fan lists","expanded":false,"pages":[{"title":"Get smart lists","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/smart","href":"/v1/api-reference/get-smart-lists"},{"title":"Get smart list members (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/smart/{uuid}","href":"/v1/api-reference/get-smart-list-members-cursor-paginated"},{"title":"Get custom lists (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/custom","href":"/v1/api-reference/get-custom-lists-cursor-paginated"},{"title":"Get custom list members (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/custom/{uuid}","href":"/v1/api-reference/get-custom-list-members-cursor-paginated"},{"title":"Create a custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/lists/custom","href":"/v1/api-reference/create-a-custom-list"},{"title":"Rename a custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/chats/lists/custom/{uuid}","href":"/v1/api-reference/rename-a-custom-list"},{"title":"Delete a custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/lists/custom/{uuid}","href":"/v1/api-reference/delete-a-custom-list"},{"title":"Add members to a custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/lists/custom/{uuid}/members","href":"/v1/api-reference/add-members-to-a-custom-list"},{"title":"Remove a member from a custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/lists/custom/{uuid}/members/{userUuid}","href":"/v1/api-reference/remove-a-member-from-a-custom-list"}]},{"group":"Dynamic lists","expanded":false,"pages":[{"title":"Get dynamic smart lists","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/dynamic","href":"/v1/api-reference/get-dynamic-smart-lists"},{"title":"Create a dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/lists/dynamic","href":"/v1/api-reference/create-a-dynamic-smart-list"},{"title":"Get dynamic smart list dimensions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/dynamic/dimensions","href":"/v1/api-reference/get-dynamic-smart-list-dimensions"},{"title":"Get dynamic smart list memory topic suggestions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/dynamic/memory-topics","href":"/v1/api-reference/get-dynamic-smart-list-memory-topic-suggestions"},{"title":"Preview a dynamic smart list's member count","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/lists/dynamic/preview/count","href":"/v1/api-reference/preview-a-dynamic-smart-lists-member-count"},{"title":"Preview a dynamic smart list's members","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/lists/dynamic/preview/members","href":"/v1/api-reference/preview-a-dynamic-smart-lists-members"},{"title":"Translate a plain-language description into a dynamic smart list definition","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/chats/lists/dynamic/translate","href":"/v1/api-reference/translate-a-plain-language-description-into-a-dynamic-smart-list-definition"},{"title":"Get a dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/dynamic/{uuid}","href":"/v1/api-reference/get-a-dynamic-smart-list"},{"title":"Update a dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/chats/lists/dynamic/{uuid}","href":"/v1/api-reference/update-a-dynamic-smart-list"},{"title":"Delete a dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/chats/lists/dynamic/{uuid}","href":"/v1/api-reference/delete-a-dynamic-smart-list"},{"title":"Get dynamic smart list members (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/chats/lists/dynamic/{uuid}/members","href":"/v1/api-reference/get-dynamic-smart-list-members-cursor-paginated"}]}]},{"group":"Notifications","pages":[{"title":"Get notifications feed","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/notifications","href":"/v1/api-reference/get-notifications-feed"}]},{"group":"Posts","pages":[{"group":"Posts","expanded":false,"pages":[{"title":"Get list of posts (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/posts","href":"/v1/api-reference/get-list-of-posts-cursor-paginated"},{"title":"Get post by UUID","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/posts/{uuid}","href":"/v1/api-reference/get-post-by-uuid"},{"title":"Create a new post","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/posts","href":"/v1/api-reference/create-a-new-post"},{"title":"Update a post","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/posts/{uuid}","href":"/v1/api-reference/update-a-post"},{"title":"Delete a post","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/posts/{uuid}","href":"/v1/api-reference/delete-a-post"},{"title":"Repost content","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/posts/{uuid}/repost","href":"/v1/api-reference/repost-content"},{"title":"Pin a post","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/posts/{uuid}/pin","href":"/v1/api-reference/pin-a-post"},{"title":"Unpin a post","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/posts/{uuid}/pin","href":"/v1/api-reference/unpin-a-post"}]},{"group":"Comments","expanded":false,"pages":[{"title":"Get comments for a post (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/posts/{uuid}/comments","href":"/v1/api-reference/get-comments-for-a-post-cursor-paginated"},{"title":"Create a comment on a post","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/posts/{uuid}/comments","href":"/v1/api-reference/create-a-comment-on-a-post"},{"title":"Delete a comment from a post","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/posts/{uuid}/comments/{commentUuid}","href":"/v1/api-reference/delete-a-comment-from-a-post"}]},{"group":"Likes and tips","expanded":false,"pages":[{"title":"Get tips for a post (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/posts/{uuid}/tips","href":"/v1/api-reference/get-tips-for-a-post-cursor-paginated"},{"title":"Get likes for a post (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/posts/{uuid}/likes","href":"/v1/api-reference/get-likes-for-a-post-cursor-paginated"}]}]},{"group":"Creator tools","pages":[{"group":"Vault","expanded":false,"pages":[{"title":"List vault folders (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/vault/folders","href":"/v1/api-reference/list-vault-folders-cursor-paginated"},{"title":"Create a vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/vault/folders","href":"/v1/api-reference/create-a-vault-folder"},{"title":"Get vault folder details","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/vault/folders/{folderName}","href":"/v1/api-reference/get-vault-folder-details"},{"title":"Delete vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/vault/folders/{folderName}","href":"/v1/api-reference/delete-vault-folder"},{"title":"Rename vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/vault/folders/{folderName}","href":"/v1/api-reference/rename-vault-folder"},{"title":"List media in folder (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/vault/folders/{folderName}/media","href":"/v1/api-reference/list-media-in-folder-cursor-paginated"},{"title":"Add media to folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/vault/folders/{folderName}/media","href":"/v1/api-reference/add-media-to-folder"},{"title":"Update media properties","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/vault/folders/{folderName}/media/{mediaUuid}","href":"/v1/api-reference/update-media-properties"},{"title":"Remove media from folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/vault/folders/{folderName}/media/{mediaUuid}","href":"/v1/api-reference/remove-media-from-folder"}]},{"group":"Media","expanded":false,"pages":[{"title":"List content collections (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/collections","href":"/v1/api-reference/list-content-collections-cursor-paginated"},{"title":"Create a content collection","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/collections","href":"/v1/api-reference/create-a-content-collection"},{"title":"Rename a content collection","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/collections/{uuid}","href":"/v1/api-reference/rename-a-content-collection"},{"title":"Delete a content collection","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/collections/{uuid}","href":"/v1/api-reference/delete-a-content-collection"},{"title":"Get user's media list (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/media","href":"/v1/api-reference/get-users-media-list-cursor-paginated"},{"title":"Get bulk media by UUIDs","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/media/bulk","href":"/v1/api-reference/get-bulk-media-by-uuids"},{"title":"Get media by UUID","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/media/{uuid}","href":"/v1/api-reference/get-media-by-uuid"},{"title":"Update media name, caption and recommended price","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/media/{uuid}","href":"/v1/api-reference/update-media-name-caption-and-recommended-price"},{"title":"Delete media from vault","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/media/{uuid}","href":"/v1/api-reference/delete-media-from-vault"},{"title":"Get media for an entitled consumer","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/media/{uuid}/entitled","href":"/v1/api-reference/get-media-for-an-entitled-consumer"},{"title":"Grant a consumer access to a media item","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/media/{uuid}/grant","href":"/v1/api-reference/grant-a-consumer-access-to-a-media-item"},{"title":"Check if the authenticated user has purchased a media link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/media/links/{uuid}/purchased","href":"/v1/api-reference/check-if-the-authenticated-user-has-purchased-a-media-link"},{"title":"Create multipart upload session","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/media/uploads","href":"/v1/api-reference/create-multipart-upload-session"},{"title":"Get signed URL for upload part","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/uploads/{uploadId}/parts/{partNumber}/url","href":"/v1/api-reference/get-signed-url-for-upload-part"},{"title":"Get signed URLs for a range of upload parts","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/uploads/{uploadId}/parts/urls","href":"/v1/api-reference/get-signed-urls-for-a-range-of-upload-parts"},{"title":"Complete upload session","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/media/uploads/{uploadId}","href":"/v1/api-reference/complete-upload-session"}]},{"group":"Tracking links","expanded":false,"pages":[{"title":"List tracking links","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/tracking-links","href":"/v1/api-reference/list-tracking-links"},{"title":"List users for a tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/tracking-links/{uuid}/users","href":"/v1/api-reference/list-users-for-a-tracking-link"},{"title":"Get tracking metadata for a user","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/tracking-links/{uuid}/users/{userUuid}/metadata","href":"/v1/api-reference/get-tracking-metadata-for-a-user"},{"title":"Create a tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/tracking-links","href":"/v1/api-reference/create-a-tracking-link"},{"title":"Delete a tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/tracking-links/{uuid}","href":"/v1/api-reference/delete-a-tracking-link"},{"title":"List clicks on a tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/tracking-links/{uuid}/impressions","href":"/v1/api-reference/list-clicks-on-a-tracking-link"}]},{"group":"Free trial links","expanded":false,"pages":[{"title":"List free trial links","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/free-trial-links","href":"/v1/api-reference/list-free-trial-links"},{"title":"Create a free trial link","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/free-trial-links","href":"/v1/api-reference/create-a-free-trial-link"},{"title":"Edit a free trial link","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/free-trial-links/{uuid}","href":"/v1/api-reference/edit-a-free-trial-link"},{"title":"Delete a free trial link","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/free-trial-links/{uuid}","href":"/v1/api-reference/delete-a-free-trial-link"}]},{"group":"Promotions","expanded":false,"pages":[{"title":"List promotions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/promotions","href":"/v1/api-reference/list-promotions"},{"title":"Create a promotion","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/promotions","href":"/v1/api-reference/create-a-promotion"},{"title":"Edit a promotion","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/promotions/{promotionUuid}","href":"/v1/api-reference/edit-a-promotion"},{"title":"Stop a promotion","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/promotions/{promotionUuid}","href":"/v1/api-reference/stop-a-promotion"}]},{"group":"Checkout links","expanded":false,"pages":[{"title":"List checkout links (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/checkout-links","href":"/v1/api-reference/list-checkout-links-cursor-paginated"},{"title":"Create a checkout link","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/checkout-links","href":"/v1/api-reference/create-a-checkout-link"},{"title":"Enable or disable a checkout link","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/checkout-links/{uuid}","href":"/v1/api-reference/enable-or-disable-a-checkout-link"},{"title":"Delete a checkout link","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/checkout-links/{uuid}","href":"/v1/api-reference/delete-a-checkout-link"}]},{"group":"Media links","expanded":false,"pages":[{"title":"List media links (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/media-links","href":"/v1/api-reference/list-media-links-cursor-paginated"},{"title":"Create a media link","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/media-links","href":"/v1/api-reference/create-a-media-link"},{"title":"Delete a media link","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/media-links/{uuid}","href":"/v1/api-reference/delete-a-media-link"}]}]},{"group":"Insights and earnings","pages":[{"group":"Insights","expanded":false,"pages":[{"title":"Get top-spending fans (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/top-spenders","href":"/v1/api-reference/get-top-spending-fans-cursor-paginated"},{"title":"Get subscriber events over time","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/subscribers","href":"/v1/api-reference/get-subscriber-events-over-time"},{"title":"Get fan insights in bulk","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/fans","href":"/v1/api-reference/get-fan-insights-in-bulk"},{"title":"Get fan insights","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/fans/{userUuid}","href":"/v1/api-reference/get-fan-insights"},{"title":"Get fan insights in bulk (POST batch)","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/insights/fans/batch","href":"/v1/api-reference/get-fan-insights-in-bulk-post-batch"},{"title":"Get fan profiles in bulk","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/insights/fans/profiles","href":"/v1/api-reference/get-fan-profiles-in-bulk"},{"title":"Get fan retention summary","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/fan-retention-summary","href":"/v1/api-reference/get-fan-retention-summary"},{"title":"Get unsubscribe reasons","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/unsubscribe-reasons","href":"/v1/api-reference/get-unsubscribe-reasons"},{"title":"Get followers (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/followers","href":"/v1/api-reference/get-followers-cursor-paginated"},{"title":"Get subscribers (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/subscribers","href":"/v1/api-reference/get-subscribers-cursor-paginated"},{"title":"Get subscriber by user UUID","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/subscribers/{userUuid}","href":"/v1/api-reference/get-subscriber-by-user-uuid"},{"title":"Get subscriber history","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/subscribers/{userUuid}/history","href":"/v1/api-reference/get-subscriber-history"}]},{"group":"Earnings and payouts","expanded":false,"pages":[{"title":"Get earnings data","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/earnings","href":"/v1/api-reference/get-earnings-data"},{"title":"Get aggregated earnings summary","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/earnings/summary","href":"/v1/api-reference/get-aggregated-earnings-summary"},{"title":"Get earnings percentile","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/earnings/percentile","href":"/v1/api-reference/get-earnings-percentile"},{"title":"Get spending reversal data","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/insights/spending","href":"/v1/api-reference/get-spending-reversal-data"}]}]},{"group":"Experiences","pages":[{"title":"List the experiences your app has published for this creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/experiences","href":"/v1/api-reference/list-the-experiences-your-app-has-published-for-this-creator"},{"title":"Publish an experience for this creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/experiences","href":"/v1/api-reference/publish-an-experience-for-this-creator"},{"title":"Update one of your experiences for this creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/experiences/{experienceUuid}","href":"/v1/api-reference/update-one-of-your-experiences-for-this-creator"},{"title":"Unpublish one of your experiences for this creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/experiences/{experienceUuid}/unpublish","href":"/v1/api-reference/unpublish-one-of-your-experiences-for-this-creator"},{"title":"Mint a publish/unpublish request token","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/experiences/request-token","href":"/v1/api-reference/mint-a-publishunpublish-request-token"},{"title":"Exchange a fan experience launch token","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/experiences/token/exchange","href":"/v1/api-reference/exchange-a-fan-experience-launch-token"},{"title":"List action purchases for one of your experiences","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/experiences/{experienceUuid}/action-purchases","href":"/v1/api-reference/list-action-purchases-for-one-of-your-experiences"},{"title":"Charge one action from the fan's wallet balance","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/experiences/{experienceUuid}/action-purchases","href":"/v1/api-reference/charge-one-action-from-the-fans-wallet-balance"},{"title":"Get one action purchase by its purchase reference","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/experiences/{experienceUuid}/action-purchases/{purchaseReference}","href":"/v1/api-reference/get-one-action-purchase-by-its-purchase-reference"},{"title":"List an experience's priced actions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/experiences/{experienceUuid}/actions","href":"/v1/api-reference/list-an-experiences-priced-actions"}]},{"group":"Webhooks","pages":[{"title":"List webhook subscriptions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/webhooks/subscriptions","href":"/v1/api-reference/list-webhook-subscriptions"},{"title":"Create a webhook subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/webhooks/subscriptions","href":"/v1/api-reference/create-a-webhook-subscription"},{"title":"Send a test webhook event","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/webhooks/test","href":"/v1/api-reference/send-a-test-webhook-event"},{"title":"Delete a webhook subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/webhooks/subscriptions/{id}","href":"/v1/api-reference/delete-a-webhook-subscription"}]},{"group":"Agency","pages":[{"group":"Agency management","expanded":false,"pages":[{"title":"Get agency creators (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators","href":"/v1/api-reference/get-agency-creators-cursor-paginated"},{"title":"List team members","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/team-members","href":"/v1/api-reference/list-team-members"},{"title":"Invite a team member","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/agencies/invites","href":"/v1/api-reference/invite-a-team-member"},{"title":"Invite a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/agencies/creator-invites","href":"/v1/api-reference/invite-a-creator"},{"title":"Update team member","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/agencies/team-members/{userId}","href":"/v1/api-reference/update-team-member"},{"title":"Bulk-create posts across creators","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/agencies/posts","href":"/v1/api-reference/bulk-create-posts-across-creators"},{"title":"Get messages from multiple chats in bulk across the agency's creators (POST batch)","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/agencies/chats/messages/batch","href":"/v1/api-reference/get-messages-from-multiple-chats-in-bulk-across-the-agencys-creators-post-batch"}]},{"group":"Agency insights","expanded":false,"pages":[{"title":"Get agency insights headline metrics","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/insights/overview","href":"/v1/api-reference/get-agency-insights-headline-metrics"},{"title":"Get chatter leaderboard","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/insights/chatter-leaderboard","href":"/v1/api-reference/get-chatter-leaderboard"},{"title":"List chatter earnings by creator (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/insights/chatter-earnings","href":"/v1/api-reference/list-chatter-earnings-by-creator-cursor-paginated"},{"title":"Get the agency's five highest-spending fans","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/insights/top-fans","href":"/v1/api-reference/get-the-agencys-five-highest-spending-fans"},{"title":"List agency fan spend by country (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/insights/demographics","href":"/v1/api-reference/list-agency-fan-spend-by-country-cursor-paginated"},{"title":"List chats across all agency creators (cursor-paginated, filterable)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/chats","href":"/v1/api-reference/list-chats-across-all-agency-creators-cursor-paginated-filterable"},{"title":"List active subscribers across all agency creators (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/subscribers","href":"/v1/api-reference/list-active-subscribers-across-all-agency-creators-cursor-paginated"},{"title":"List per-creator-per-day earnings across all agency creators (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/earnings","href":"/v1/api-reference/list-per-creator-per-day-earnings-across-all-agency-creators-cursor-paginated"},{"title":"List per-creator-per-day subscriber events across all agency creators (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/subscribers-history","href":"/v1/api-reference/list-per-creator-per-day-subscriber-events-across-all-agency-creators-cursor-paginated"},{"title":"List per-creator-per-day new-follower counts across all agency creators (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/agencies/followers-history","href":"/v1/api-reference/list-per-creator-per-day-new-follower-counts-across-all-agency-creators-cursor-paginated"}]},{"group":"Creator account","expanded":false,"pages":[{"title":"Get account view for a managed creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/account","href":"/v1/api-reference/get-account-view-for-a-managed-creator"},{"title":"Get a creator's account health","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/account-health","href":"/v1/api-reference/get-a-creators-account-health"},{"title":"List a creator's flagged media (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/account-health/flagged-media","href":"/v1/api-reference/list-a-creators-flagged-media-cursor-paginated"},{"title":"Update creator's subscription price","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/subscription-price","href":"/v1/api-reference/update-creators-subscription-price"},{"title":"Get creator notifications feed","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/notifications","href":"/v1/api-reference/get-creator-notifications-feed"},{"title":"Get creator followers (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/followers","href":"/v1/api-reference/get-creator-followers-cursor-paginated"},{"title":"Get creator subscribers (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/subscribers","href":"/v1/api-reference/get-creator-subscribers-cursor-paginated"},{"title":"Get online subscribers","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/subscribers/online","href":"/v1/api-reference/get-online-subscribers"},{"title":"Get creator subscriber by user UUID","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/subscribers/{userUuid}","href":"/v1/api-reference/get-creator-subscriber-by-user-uuid"},{"title":"Get creator subscriber history","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/subscribers/{userUuid}/history","href":"/v1/api-reference/get-creator-subscriber-history"}]},{"group":"Creator blocks","expanded":false,"pages":[{"title":"List users blocked by a creator (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/blocks","href":"/v1/api-reference/list-users-blocked-by-a-creator-cursor-paginated"},{"title":"Block a user on behalf of a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/blocks/{userUuid}","href":"/v1/api-reference/block-a-user-on-behalf-of-a-creator"},{"title":"Unblock a user on behalf of a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/blocks/{userUuid}","href":"/v1/api-reference/unblock-a-user-on-behalf-of-a-creator"}]},{"group":"Creator chats","expanded":false,"pages":[{"title":"Get chats of a creator (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats","href":"/v1/api-reference/get-chats-of-a-creator-cursor-paginated"},{"title":"Get unread chats, messages, and notifications count for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/unread","href":"/v1/api-reference/get-unread-chats-messages-and-notifications-count-for-a-creator"},{"title":"Create new chat as creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats","href":"/v1/api-reference/create-new-chat-as-creator"},{"title":"Get online statuses for multiple users as a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/statuses","href":"/v1/api-reference/get-online-statuses-for-multiple-users-as-a-creator"},{"title":"Update a creator's chat with a user","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/chats/{userUuid}","href":"/v1/api-reference/update-a-creators-chat-with-a-user"},{"title":"Get a creator's notes about a fan","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/{userUuid}/notes","href":"/v1/api-reference/get-a-creators-notes-about-a-fan"},{"title":"Update a creator's notes about a fan","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/creators/{creatorUserUuid}/chats/{userUuid}/notes","href":"/v1/api-reference/update-a-creators-notes-about-a-fan"},{"title":"Get creator's smart lists","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/smart","href":"/v1/api-reference/get-creators-smart-lists"},{"title":"Get creator's smart list members (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/smart/{uuid}","href":"/v1/api-reference/get-creators-smart-list-members-cursor-paginated"},{"title":"Get creator's custom lists (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/custom","href":"/v1/api-reference/get-creators-custom-lists-cursor-paginated"},{"title":"Get creator's custom list members (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/custom/{uuid}","href":"/v1/api-reference/get-creators-custom-list-members-cursor-paginated"},{"title":"Create a custom list for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/lists/custom","href":"/v1/api-reference/create-a-custom-list-for-a-creator"},{"title":"Rename a creator's custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/chats/lists/custom/{uuid}","href":"/v1/api-reference/rename-a-creators-custom-list"},{"title":"Delete a creator's custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/chats/lists/custom/{uuid}","href":"/v1/api-reference/delete-a-creators-custom-list"},{"title":"Add members to a creator's custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/lists/custom/{uuid}/members","href":"/v1/api-reference/add-members-to-a-creators-custom-list"},{"title":"Remove a member from a creator's custom list","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/chats/lists/custom/{uuid}/members/{userUuid}","href":"/v1/api-reference/remove-a-member-from-a-creators-custom-list"},{"title":"List mass messages for a creator (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/mass-messages","href":"/v1/api-reference/list-mass-messages-for-a-creator-cursor-paginated"},{"title":"Send a mass message as creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/mass-messages","href":"/v1/api-reference/send-a-mass-message-as-creator"},{"title":"Update a creator scheduled mass message","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/chats/mass-messages/{messageUuid}","href":"/v1/api-reference/update-a-creator-scheduled-mass-message"},{"title":"Delete a creator mass message","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/chats/mass-messages/{messageUuid}","href":"/v1/api-reference/delete-a-creator-mass-message"},{"title":"Get a creator's template messages (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/templates","href":"/v1/api-reference/get-a-creators-template-messages-cursor-paginated"},{"title":"Get a creator's template folders (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/templates/folders","href":"/v1/api-reference/get-a-creators-template-folders-cursor-paginated"},{"title":"Get one of a creator's template messages","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/templates/{templateUuid}","href":"/v1/api-reference/get-one-of-a-creators-template-messages"},{"title":"List a creator's automated messages","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/automated-messages","href":"/v1/api-reference/list-a-creators-automated-messages"},{"title":"Enable or update a creator's automated message","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/creators/{creatorUserUuid}/chats/automated-messages/{trigger}","href":"/v1/api-reference/enable-or-update-a-creators-automated-message"},{"title":"Disable a creator's automated message","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/chats/automated-messages/{trigger}","href":"/v1/api-reference/disable-a-creators-automated-message"},{"title":"Send a message as creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/{userUuid}/message","href":"/v1/api-reference/send-a-message-as-creator"},{"title":"Get messages from multiple chats in bulk for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/messages/batch","href":"/v1/api-reference/get-messages-from-multiple-chats-in-bulk-for-a-creator"},{"title":"Get messages between a creator and a user","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/{userUuid}/messages","href":"/v1/api-reference/get-messages-between-a-creator-and-a-user"},{"title":"Resolve media UUIDs for a creator chat message","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/{userUuid}/messages/{messageUuid}/media","href":"/v1/api-reference/resolve-media-uuids-for-a-creator-chat-message"},{"title":"Get media from a creator's chat","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/{userUuid}/media","href":"/v1/api-reference/get-media-from-a-creators-chat"},{"title":"Delete a message as a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/chats/{userUuid}/messages/{messageUuid}","href":"/v1/api-reference/delete-a-message-as-a-creator"}]},{"group":"Creator dynamic lists","expanded":false,"pages":[{"title":"Get a creator's dynamic smart lists","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/dynamic","href":"/v1/api-reference/get-a-creators-dynamic-smart-lists"},{"title":"Create a dynamic smart list for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/lists/dynamic","href":"/v1/api-reference/create-a-dynamic-smart-list-for-a-creator"},{"title":"Get a creator's dynamic smart list dimensions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/dynamic/dimensions","href":"/v1/api-reference/get-a-creators-dynamic-smart-list-dimensions"},{"title":"Get a creator's dynamic smart list memory topic suggestions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/dynamic/memory-topics","href":"/v1/api-reference/get-a-creators-dynamic-smart-list-memory-topic-suggestions"},{"title":"Preview a creator's dynamic smart list member count","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/lists/dynamic/preview/count","href":"/v1/api-reference/preview-a-creators-dynamic-smart-list-member-count"},{"title":"Preview a creator's dynamic smart list members","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/lists/dynamic/preview/members","href":"/v1/api-reference/preview-a-creators-dynamic-smart-list-members"},{"title":"Translate a plain-language description into a dynamic smart list definition for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/chats/lists/dynamic/translate","href":"/v1/api-reference/translate-a-plain-language-description-into-a-dynamic-smart-list-definition-for-a-creator"},{"title":"Get a creator's dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/dynamic/{uuid}","href":"/v1/api-reference/get-a-creators-dynamic-smart-list"},{"title":"Update a creator's dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/chats/lists/dynamic/{uuid}","href":"/v1/api-reference/update-a-creators-dynamic-smart-list"},{"title":"Delete a creator's dynamic smart list","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/chats/lists/dynamic/{uuid}","href":"/v1/api-reference/delete-a-creators-dynamic-smart-list"},{"title":"Get a creator's dynamic smart list members (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/chats/lists/dynamic/{uuid}/members","href":"/v1/api-reference/get-a-creators-dynamic-smart-list-members-cursor-paginated"}]},{"group":"Creator insights","expanded":false,"pages":[{"title":"Get earnings data for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/earnings","href":"/v1/api-reference/get-earnings-data-for-a-creator"},{"title":"Get aggregated earnings summary for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/earnings/summary","href":"/v1/api-reference/get-aggregated-earnings-summary-for-a-creator"},{"title":"Get earnings percentile for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/earnings/percentile","href":"/v1/api-reference/get-earnings-percentile-for-a-creator"},{"title":"Get spending reversal data for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/spending","href":"/v1/api-reference/get-spending-reversal-data-for-a-creator"},{"title":"Get top-spending fans for a creator (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/top-spenders","href":"/v1/api-reference/get-top-spending-fans-for-a-creator-cursor-paginated"},{"title":"Get subscriber events over time for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/subscribers","href":"/v1/api-reference/get-subscriber-events-over-time-for-a-creator"},{"title":"Get fan insights in bulk for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/fans","href":"/v1/api-reference/get-fan-insights-in-bulk-for-a-creator"},{"title":"Get fan insights for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/fans/{userUuid}","href":"/v1/api-reference/get-fan-insights-for-a-creator"},{"title":"Get fan insights in bulk for a creator (POST batch)","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/insights/fans/batch","href":"/v1/api-reference/get-fan-insights-in-bulk-for-a-creator-post-batch"},{"title":"Get fan retention summary for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/fan-retention-summary","href":"/v1/api-reference/get-fan-retention-summary-for-a-creator"},{"title":"Get unsubscribe reasons for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/insights/unsubscribe-reasons","href":"/v1/api-reference/get-unsubscribe-reasons-for-a-creator"}]},{"group":"Creator media","expanded":false,"pages":[{"title":"Get creator's media list (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media","href":"/v1/api-reference/get-creators-media-list-cursor-paginated"},{"title":"Get bulk media by UUIDs for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/bulk","href":"/v1/api-reference/get-bulk-media-by-uuids-for-a-creator"},{"title":"Get creator's media by UUID","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/{uuid}","href":"/v1/api-reference/get-creators-media-by-uuid"},{"title":"Update a creator's media name, caption and recommended price","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/media/{uuid}","href":"/v1/api-reference/update-a-creators-media-name-caption-and-recommended-price"},{"title":"Delete a creator's media from the vault","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/media/{uuid}","href":"/v1/api-reference/delete-a-creators-media-from-the-vault"},{"title":"Get media for an entitled consumer of a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/{uuid}/entitled","href":"/v1/api-reference/get-media-for-an-entitled-consumer-of-a-creator"},{"title":"Grant a consumer access to a creator's media item","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/media/{uuid}/grant","href":"/v1/api-reference/grant-a-consumer-access-to-a-creators-media-item"},{"title":"Check if a creator has purchased a media link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/links/{uuid}/purchased","href":"/v1/api-reference/check-if-a-creator-has-purchased-a-media-link"},{"title":"Create multipart upload session for creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/media/uploads","href":"/v1/api-reference/create-multipart-upload-session-for-creator"},{"title":"Get signed URL for upload part","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/uploads/{uploadId}/parts/{partNumber}/url","href":"/v1/api-reference/get-signed-url-for-upload-part"},{"title":"Get signed URLs for a range of upload parts","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/media/uploads/{uploadId}/parts/urls","href":"/v1/api-reference/get-signed-urls-for-a-range-of-upload-parts"},{"title":"Complete creator's upload session","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/media/uploads/{uploadId}","href":"/v1/api-reference/complete-creators-upload-session"}]},{"group":"Creator posts","expanded":false,"pages":[{"title":"Get posts for a creator (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/posts","href":"/v1/api-reference/get-posts-for-a-creator-cursor-paginated"},{"title":"Get a creator's post by UUID","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/posts/{uuid}","href":"/v1/api-reference/get-a-creators-post-by-uuid"},{"title":"Create a new post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/posts","href":"/v1/api-reference/create-a-new-post-for-a-creator"},{"title":"Update a post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/posts/{uuid}","href":"/v1/api-reference/update-a-post-for-a-creator"},{"title":"Delete a post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/posts/{uuid}","href":"/v1/api-reference/delete-a-post-for-a-creator"},{"title":"Get comments for a creator's post (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/posts/{uuid}/comments","href":"/v1/api-reference/get-comments-for-a-creators-post-cursor-paginated"},{"title":"Create a comment on a post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/posts/{uuid}/comments","href":"/v1/api-reference/create-a-comment-on-a-post-for-a-creator"},{"title":"Delete a comment from a post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/posts/{uuid}/comments/{commentUuid}","href":"/v1/api-reference/delete-a-comment-from-a-post-for-a-creator"},{"title":"Repost content for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/posts/{uuid}/repost","href":"/v1/api-reference/repost-content-for-a-creator"},{"title":"Pin a post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/posts/{uuid}/pin","href":"/v1/api-reference/pin-a-post-for-a-creator"},{"title":"Unpin a post for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/posts/{uuid}/pin","href":"/v1/api-reference/unpin-a-post-for-a-creator"},{"title":"Get tips for a creator's post (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/posts/{uuid}/tips","href":"/v1/api-reference/get-tips-for-a-creators-post-cursor-paginated"},{"title":"Get likes for a creator's post (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/posts/{uuid}/likes","href":"/v1/api-reference/get-likes-for-a-creators-post-cursor-paginated"}]},{"group":"Creator tracking links","expanded":false,"pages":[{"title":"List creator's tracking links","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/tracking-links","href":"/v1/api-reference/list-creators-tracking-links"},{"title":"Create a tracking link for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/tracking-links","href":"/v1/api-reference/create-a-tracking-link-for-a-creator"},{"title":"List users for a creator's tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/tracking-links/{uuid}/users","href":"/v1/api-reference/list-users-for-a-creators-tracking-link"},{"title":"Get tracking metadata for a user on a creator's tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/tracking-links/{uuid}/users/{userUuid}/metadata","href":"/v1/api-reference/get-tracking-metadata-for-a-user-on-a-creators-tracking-link"},{"title":"Delete a tracking link for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/tracking-links/{uuid}","href":"/v1/api-reference/delete-a-tracking-link-for-a-creator"},{"title":"List clicks on a creator's tracking link","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/tracking-links/{uuid}/impressions","href":"/v1/api-reference/list-clicks-on-a-creators-tracking-link"}]},{"group":"Creator free trial links","expanded":false,"pages":[{"title":"List creator's free trial links","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/free-trial-links","href":"/v1/api-reference/list-creators-free-trial-links"},{"title":"Create a free trial link for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/free-trial-links","href":"/v1/api-reference/create-a-free-trial-link-for-a-creator"},{"title":"Edit a creator's free trial link","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/creators/{creatorUserUuid}/free-trial-links/{uuid}","href":"/v1/api-reference/edit-a-creators-free-trial-link"},{"title":"Delete a creator's free trial link","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/free-trial-links/{uuid}","href":"/v1/api-reference/delete-a-creators-free-trial-link"}]},{"group":"Creator promotions","expanded":false,"pages":[{"title":"List creator's promotions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/promotions","href":"/v1/api-reference/list-creators-promotions"},{"title":"Create a promotion for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/promotions","href":"/v1/api-reference/create-a-promotion-for-a-creator"},{"title":"Edit a creator's promotion","deprecated":null,"version":null,"openapi":"/openapi-v1.json put /v1/creators/{creatorUserUuid}/promotions/{promotionUuid}","href":"/v1/api-reference/edit-a-creators-promotion"},{"title":"Stop a creator's promotion","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/promotions/{promotionUuid}","href":"/v1/api-reference/stop-a-creators-promotion"}]},{"group":"Creator checkout links","expanded":false,"pages":[{"title":"List a creator's checkout links (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/checkout-links","href":"/v1/api-reference/list-a-creators-checkout-links-cursor-paginated"},{"title":"Create a checkout link for a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/checkout-links","href":"/v1/api-reference/create-a-checkout-link-for-a-creator"},{"title":"Enable or disable a creator's checkout link","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/checkout-links/{uuid}","href":"/v1/api-reference/enable-or-disable-a-creators-checkout-link"},{"title":"Delete a creator's checkout link","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/checkout-links/{uuid}","href":"/v1/api-reference/delete-a-creators-checkout-link"}]},{"group":"Creator checkout payments","expanded":false,"pages":[{"title":"List a creator's checkout-link payments","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/checkout-links/payments","href":"/v1/api-reference/list-a-creators-checkout-link-payments"},{"title":"Get a creator's checkout-link payment by invoice number","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/checkout-links/payments/{invoiceNumber}","href":"/v1/api-reference/get-a-creators-checkout-link-payment-by-invoice-number"}]},{"group":"Creator checkout subscriptions","expanded":false,"pages":[{"title":"List a creator's checkout-link subscriptions","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/checkout-links/subscriptions","href":"/v1/api-reference/list-a-creators-checkout-link-subscriptions"},{"title":"Cancel a creator's checkout-link subscription at the period end","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/checkout-links/subscriptions/{uuid}/cancel","href":"/v1/api-reference/cancel-a-creators-checkout-link-subscription-at-the-period-end"},{"title":"Reactivate a cancelled checkout-link subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/checkout-links/subscriptions/{uuid}/uncancel","href":"/v1/api-reference/reactivate-a-cancelled-checkout-link-subscription"}]},{"group":"Creator checkout refund requests","expanded":false,"pages":[{"title":"Ask Fanvue to refund a checkout-link payment","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/checkout-links/payments/{invoiceNumber}/refund-requests","href":"/v1/api-reference/ask-fanvue-to-refund-a-checkout-link-payment"},{"title":"List a creator's checkout-link refund requests","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/checkout-links/refund-requests","href":"/v1/api-reference/list-a-creators-checkout-link-refund-requests"},{"title":"Withdraw a checkout-link refund request","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/checkout-links/refund-requests/{uuid}/withdraw","href":"/v1/api-reference/withdraw-a-checkout-link-refund-request"}]},{"group":"Creator vault","expanded":false,"pages":[{"title":"List creator vault folders (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/vault/folders","href":"/v1/api-reference/list-creator-vault-folders-cursor-paginated"},{"title":"Create a creator vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/vault/folders","href":"/v1/api-reference/create-a-creator-vault-folder"},{"title":"Get creator vault folder details","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/vault/folders/{folderName}","href":"/v1/api-reference/get-creator-vault-folder-details"},{"title":"Rename creator vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json patch /v1/creators/{creatorUserUuid}/vault/folders/{folderName}","href":"/v1/api-reference/rename-creator-vault-folder"},{"title":"Delete creator vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/vault/folders/{folderName}","href":"/v1/api-reference/delete-creator-vault-folder"},{"title":"List media in creator vault folder (cursor-paginated)","deprecated":null,"version":null,"openapi":"/openapi-v1.json get /v1/creators/{creatorUserUuid}/vault/folders/{folderName}/media","href":"/v1/api-reference/list-media-in-creator-vault-folder-cursor-paginated"},{"title":"Add media to creator vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/creators/{creatorUserUuid}/vault/folders/{folderName}/media","href":"/v1/api-reference/add-media-to-creator-vault-folder"},{"title":"Remove media from creator vault folder","deprecated":null,"version":null,"openapi":"/openapi-v1.json delete /v1/creators/{creatorUserUuid}/vault/folders/{folderName}/media/{mediaUuid}","href":"/v1/api-reference/remove-media-from-creator-vault-folder"}]}]},{"group":"Onboarding","pages":[{"title":"Onboard a creator","deprecated":null,"version":null,"openapi":"/openapi-v1.json post /v1/onboarding/creators","href":"/v1/api-reference/onboard-a-creator"}]}]},{"version":"v0","pages":[{"title":"v0","href":"/api-reference/overview"}]}]},{"tab":"UI Library","pages":[{"title":"UI Library","href":"/ui"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations/overview"}]}]},"basePath":"","title":"Fanvue API Documentation","buildId":"dpl_7z5w9HGpTJWNSQwKnp8antE5wcga","deploymentId":"dpl_7z5w9HGpTJWNSQwKnp8antE5wcga","dynamics":[],"chunks":[]}