{ "success": false, "code": 101, "type": "invalid_key", "description": "The API Key is missing or invalid."}
Risk Scoring
Profanity Detection
This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.
API v2 returns risk_level and recommendation for the submitted text (no legacy score-only or word-list fields).
API v2 accepts the key only in this header, not in query parameters or request bodies. See Authentication.POST /score/text with a JSON body (not a GET request).
The format command is used to get a response in a specific format.Expected values: JSON, XML, CSV, or NewlineFor more information please refer to Response format.
The mode command is used in the development stage to simulate the integration process before releasing it to the production environment.Expected values: live, or test.For more information please refer to Development environment.
Overall profanity risk for the submitted text (low, medium, or high). Greip classifies matches into levels: the highest severity wins (risky phrases and words first, then medium-risk, then low-risk). A clean text returns low.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Greip API Documentation","colors":{"primary":"#008CFF","light":"#008CFF","dark":"#008CFF"},"logo":{"light":"https://mintcdn.com/greip/c6lrSS26RYZXvB76/logo/light.svg?fit=max\u0026auto=format\u0026n=c6lrSS26RYZXvB76\u0026q=85\u0026s=f19b2aac5c5fcac6cccf3ef89dc6cc9a","dark":"https://mintcdn.com/greip/c6lrSS26RYZXvB76/logo/dark.svg?fit=max\u0026auto=format\u0026n=c6lrSS26RYZXvB76\u0026q=85\u0026s=3662ee2aaf8fb03ca8ba5dd0cfeb4c59"},"favicon":"https://mintcdn.com/greip/c6lrSS26RYZXvB76/favicon-1.svg?fit=max\u0026auto=format\u0026n=c6lrSS26RYZXvB76\u0026q=85\u0026s=2b357f173640f57b886f5271c144c66d","api":{"openapi":"openapi/v2.json","playground":{"display":"interactive"},"mdx":{"auth":{"method":"bearer"},"server":"https://greipapi.com"}},"appearance":{"default":"dark"},"background":{"image":"https://mintcdn.com/greip/c6lrSS26RYZXvB76/images/background-light.png?fit=max\u0026auto=format\u0026n=c6lrSS26RYZXvB76\u0026q=85\u0026s=d5d027aef4f4e3d302c5530a198c7431"},"navbar":{"links":[{"href":"https://join.slack.com/t/greip-community/shared_invite/zt-2sxdyaaj8-418mMcVlekO6sNhKOAGWpg","label":"Community"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.greip.io/home"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/greip","github":"https://github.com/Greipio","website":"https://greip.io","x":"https://x.com/Greipio","slack":"https://join.slack.com/t/greip-community/shared_invite/zt-2sxdyaaj8-418mMcVlekO6sNhKOAGWpg"}},"banner":{"content":"🚀 Greip's API achieved **99.98%** uptime for the last 90 days, [learn more](https://status.greip.io/).","dismissible":true},"contextual":{"options":["chatgpt","claude","copy","view"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Integrations","icon":"gears","href":"https://greip.io/integrations/all"},{"anchor":"Changelog","icon":"clock-rotate-left","href":"https://changelog.greip.io"},{"anchor":"Server Status","icon":"signal-bars","href":"https://status.greip.io"},{"anchor":"Articles","icon":"rss","href":"https://greip.io/blog"},{"anchor":"Dictionary","icon":"book-open","href":"https://greip.io/blog/section/Dictionary"},{"anchor":"FAQ","icon":"circle-question","href":"https://greip.io/faq"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"greip","hasAudioNarration":false,"actualSubdomain":"greip","customDomains":["docs.greip.io"],"gitSource":{"type":"github","owner":"greipio","repo":"greip-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6ae8623506138f92515d6325","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"API Reference","count":30},{"language":"default","tag":"Knowledge Base","count":28},{"language":"default","tag":"Data Lookup","count":18},{"language":"default","tag":"Documentation","count":15},{"language":"default","tag":"Account Management","count":11},{"language":"default","tag":"Integration Guide","count":11},{"language":"default","tag":"Risk Scoring","count":10},{"language":"default","tag":"Use cases","count":9},{"language":"default","tag":"Get Started","count":8},{"language":"default","tag":"Integrations","count":7}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","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":"llms-txt-v2","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":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".panel{overflow:visible}.prose :where(.custom-link:hover):not(:where([class~=\"not-prose\"],[class~=\"not-prose\"] *)),.custom-link{display:inline-block;flex:unset;width:auto;border:unset!important;text-decoration:underline}.no-wrap-words{white-space:nowrap}"}],"page":{"pagePath":"api-reference/v2/endpoint/scoring/profanity","slug":"/api-reference/v2/endpoint/scoring/profanity","pageMetadata":{"title":"Profanity Detection","description":"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.\n\nAPI v2 returns `risk_level` and `recommendation` for the submitted text (no legacy score-only or word-list fields).","api":"POST https://v2.greipapi.com/score/text","openapi":"openapi/v2.json POST /score/text","href":"/api-reference/v2/endpoint/scoring/profanity"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"API v2 returns \", _jsx(_components.code, {\n children: \"risk_level\"\n }), \" and \", _jsx(_components.code, {\n children: \"recommendation\"\n }), \" for the submitted text (no legacy score-only or word-list fields).\"]\n })]\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];const MCPCallout=()=>{const _components={a:`a`,..._provideComponents()};return _jsxs(`div`,{class:`callout mint-my-4 mint-px-5 mint-py-4 mint-overflow-hidden mint-rounded-2xl mint-flex mint-gap-3 mint-border border-[rgba(192, 132, 252, 0.2)] bg-[rgba(192, 132, 252, 0.1)] dark:mint-border-[#c084fc4d] dark:mint-bg-[#c084fc1a] mint-text-[#6005BB] dark:mint-text-[#FFFFFF]`,\"data-callout-type\":`callout`,children:[_jsx(`div`,{class:`mint-mt-0.5 mint-w-4`,\"data-component-part\":`callout-icon`,children:_jsx(`svg`,{class:`mint-h-4 mint-w-4 !mint-m-0 mint-shrink-0 mint-bg-[#c084fc] mint-[mask-image:url('https://d3gk2c5xim1je2.cloudfront.net/v7.1.0/duotone/fire.svg')] mint-[-webkit-mask-image:url('https://d3gk2c5xim1je2.cloudfront.net/v7.1.0/duotone/fire.svg')] mint-[mask-repeat:no-repeat] mint-[-webkit-mask-repeat:no-repeat] mint-[mask-position:center] mint-[-webkit-mask-position:center]`})}),_jsx(`div`,{class:`mint-text-sm prose dark:prose-invert mint-min-w-0 mint-w-full [\u0026_kbd]:bg-background-light dark:[\u0026_kbd]:bg-background-dark mint-text-[#6005BB] dark:mint-text-[#FFFFFF]`,\"data-component-part\":`callout-content`,children:_jsxs(`span`,{\"data-as\":`p`,children:[`Want to skip the docs? Use the`,` `,_jsx(_components.a,{class:`link mint-text-xs mint-border-[#C792FC]`,href:`/docs-mcp-server`,children:_jsx(`b`,{children:`MCP Server`})})]})})]})};const Availability=({plan,color})=>{const colorMap={green:`text-green-700 dark:text-green-400`,blue:`text-blue-700 dark:text-blue-400`,purple:`text-purple-700 dark:text-purple-400`};return _jsxs(`div`,{dir:`ltr`,\"data-orientation\":`horizontal`,class:`mint-p-4 mint-px-5 mint-mt-0 md:mint-mt-4 mint-flex mint-flex-col sm:mint-flex-row mint-flex-wrap mint-gap-2 mint-relative mint-overflow-hidden mint-rounded-2xl mint-border mint-border-gray-950/10 dark:mint-border-white/10 mint-my-0 mint-bg-gray-50 dark:mint-bg-white/5 dark:codeblock-dark mint-text-gray-950 dark:mint-text-gray-50 codeblock-light mint-text-sm prose prose-gray dark:prose-invert mint-font-semibold no-wrap-words`,children:[`Endpoint availability:`,` `,_jsx(`span`,{class:` ${{green:`mint-text-green-700 dark:mint-text-green-400`,blue:`mint-text-blue-700 dark:mint-text-blue-400`,purple:`mint-text-purple-700 dark:mint-text-purple-400`}[color]} mint-flex-1`,children:plan}),_jsx(`a`,{class:`custom-link mint-text-xs`,href:`https://greip.io/detailed-pricing`,children:`Learn more`})]})};function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,ParamField,ResponseField}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`authentication`,children:`Authentication`}),`\n`,_jsxs(_components.p,{children:[`Include your API key in the `,_jsx(_components.code,{children:`Authorization`}),` header:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`http`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`http`,children:_jsxs(_components.code,{language:`http`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Authorization`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Bearer \u003capi_key>`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`API v2 accepts the key only in this header, not in query parameters or request bodies. See `,_jsx(_components.a,{href:`/authentication`,children:`Authentication`}),`.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`POST /score/text`}),` with a JSON body (not a GET request).`]}),`\n`,_jsx(Heading,{level:`3`,id:`json-body`,children:`JSON body`}),`\n`,_jsxs(ParamField,{body:`text`,type:`string`,required:true,placeholder:`The text`,id:`param-text`,children:[_jsx(_components.p,{children:`The text you want to filter.`}),_jsxs(_components.p,{children:[`Sample value: `,_jsx(_components.code,{children:`This is a sample text without profanity!`})]})]}),`\n`,_jsxs(ParamField,{body:`format`,type:`string`,default:`JSON`,placeholder:`Response format`,id:`param-format`,children:[_jsx(_components.p,{children:`The format command is used to get a response in a specific format.`}),_jsxs(_components.p,{children:[`Expected values: `,_jsx(_components.code,{children:`JSON`}),`, `,_jsx(_components.code,{children:`XML`}),`, `,_jsx(_components.code,{children:`CSV`}),`, or `,_jsx(_components.code,{children:`Newline`})]}),_jsxs(_components.p,{children:[`For more information please refer to `,_jsx(_components.a,{href:`/options/response-format`,children:`Response format`}),`.`]})]}),`\n`,_jsxs(ParamField,{body:`mode`,type:`string`,default:`live`,placeholder:`Environment`,id:`param-mode`,children:[_jsx(_components.p,{children:`The mode command is used in the development stage to simulate the integration process before releasing it to the production environment.`}),_jsxs(_components.p,{children:[`Expected values: `,_jsx(_components.code,{children:`live`}),`, or `,_jsx(_components.code,{children:`test`}),`.`]}),_jsxs(_components.p,{children:[`For more information please refer to `,_jsx(_components.a,{href:`/options/development-environment`,children:`Development environment`}),`.`]})]}),`\n`,_jsx(ParamField,{body:`source`,type:`string`,placeholder:`Integration label`,id:`param-source`,children:_jsx(_components.p,{children:`Optional label for your own analytics or support correlation (for example a product or channel name).`})}),`\n`,_jsx(Heading,{level:`3`,id:`response-properties`,children:`Response properties`}),`\n`,_jsx(ResponseField,{name:`success`,type:`boolean`,required:true,id:`param-success`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when the request succeeded; `,_jsx(_components.code,{children:`false`}),` on error.`]})}),`\n`,_jsx(ResponseField,{name:`data`,type:`object`,required:true,id:`param-data`,children:_jsxs(Expandable,{title:`properties`,defaultOpen:true,children:[_jsx(ResponseField,{name:`risk_level`,type:`string`,required:true,id:`param-risk-level`,children:_jsxs(_components.p,{children:[`Overall profanity risk for the submitted text (`,_jsx(_components.code,{children:`low`}),`, `,_jsx(_components.code,{children:`medium`}),`, or `,_jsx(_components.code,{children:`high`}),`). Greip classifies matches into levels: the highest severity wins (risky phrases and words first, then medium-risk, then low-risk). A clean text returns `,_jsx(_components.code,{children:`low`}),`.`]})}),_jsx(ResponseField,{name:`recommendation`,type:`string`,required:true,id:`param-recommendation`,children:_jsxs(_components.p,{children:[`Suggested action (`,_jsx(_components.code,{children:`accept`}),`, `,_jsx(_components.code,{children:`review`}),`, or `,_jsx(_components.code,{children:`reject`}),`) derived from `,_jsx(_components.code,{children:`risk_level`}),`.`]})})]})}),`\n`,_jsx(ResponseField,{name:`execution_ms`,type:`integer`,required:true,id:`param-execution-ms`,children:_jsx(_components.p,{children:`Time taken to process the request (milliseconds).`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{MCPCallout,Availability,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":"Profanity Detection","description":"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.\n\nAPI v2 returns `risk_level` and `recommendation` for the submitted text (no legacy score-only or word-list fields).","api":"POST https://v2.greipapi.com/score/text","openapi":"openapi/v2.json POST /score/text","href":"/api-reference/v2/endpoint/scoring/profanity"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[149,2540,"null;const Availability=()=>null;functio"]]},"panelMdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const MCPCallout=()=>{const _components={a:`a`,..._provideComponents()};return _jsxs(`div`,{class:`callout mint-my-4 mint-px-5 mint-py-4 mint-overflow-hidden mint-rounded-2xl mint-flex mint-gap-3 mint-border border-[rgba(192, 132, 252, 0.2)] bg-[rgba(192, 132, 252, 0.1)] dark:mint-border-[#c084fc4d] dark:mint-bg-[#c084fc1a] mint-text-[#6005BB] dark:mint-text-[#FFFFFF]`,\"data-callout-type\":`callout`,children:[_jsx(`div`,{class:`mint-mt-0.5 mint-w-4`,\"data-component-part\":`callout-icon`,children:_jsx(`svg`,{class:`mint-h-4 mint-w-4 !mint-m-0 mint-shrink-0 mint-bg-[#c084fc] mint-[mask-image:url('https://d3gk2c5xim1je2.cloudfront.net/v7.1.0/duotone/fire.svg')] mint-[-webkit-mask-image:url('https://d3gk2c5xim1je2.cloudfront.net/v7.1.0/duotone/fire.svg')] mint-[mask-repeat:no-repeat] mint-[-webkit-mask-repeat:no-repeat] mint-[mask-position:center] mint-[-webkit-mask-position:center]`})}),_jsx(`div`,{class:`mint-text-sm prose dark:prose-invert mint-min-w-0 mint-w-full [\u0026_kbd]:bg-background-light dark:[\u0026_kbd]:bg-background-dark mint-text-[#6005BB] dark:mint-text-[#FFFFFF]`,\"data-component-part\":`callout-content`,children:_jsxs(`span`,{\"data-as\":`p`,children:[`Want to skip the docs? Use the`,` `,_jsx(_components.a,{class:`link mint-text-xs mint-border-[#C792FC]`,href:`/docs-mcp-server`,children:_jsx(`b`,{children:`MCP Server`})})]})})]})};const Availability=({plan,color})=>{const colorMap={green:`text-green-700 dark:text-green-400`,blue:`text-blue-700 dark:text-blue-400`,purple:`text-purple-700 dark:text-purple-400`};return _jsxs(`div`,{dir:`ltr`,\"data-orientation\":`horizontal`,class:`mint-p-4 mint-px-5 mint-mt-0 md:mint-mt-4 mint-flex mint-flex-col sm:mint-flex-row mint-flex-wrap mint-gap-2 mint-relative mint-overflow-hidden mint-rounded-2xl mint-border mint-border-gray-950/10 dark:mint-border-white/10 mint-my-0 mint-bg-gray-50 dark:mint-bg-white/5 dark:codeblock-dark mint-text-gray-950 dark:mint-text-gray-50 codeblock-light mint-text-sm prose prose-gray dark:prose-invert mint-font-semibold no-wrap-words`,children:[`Endpoint availability:`,` `,_jsx(`span`,{class:` ${{green:`mint-text-green-700 dark:mint-text-green-400`,blue:`mint-text-blue-700 dark:mint-text-blue-400`,purple:`mint-text-purple-700 dark:mint-text-purple-400`}[color]} mint-flex-1`,children:plan}),_jsx(`a`,{class:`custom-link mint-text-xs`,href:`https://greip.io/detailed-pricing`,children:`Learn more`})]})};function _createMdxContent(props){const{_MdxComponentBoundary}={..._provideComponents(),...props.components};if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(_MdxComponentBoundary,{name:`MCPCallout`,children:_jsx(MCPCallout,{})}),`\n`,_jsx(_MdxComponentBoundary,{name:`Availability`,children:_jsx(Availability,{plan:`Standard and above`,color:`green`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{MCPCallout,Availability,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":"Profanity Detection","description":"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.\n\nAPI v2 returns `risk_level` and `recommendation` for the submitted text (no legacy score-only or word-list fields).","api":"POST https://v2.greipapi.com/score/text","openapi":"openapi/v2.json POST /score/text","href":"/api-reference/v2/endpoint/scoring/profanity"}}},"mdxSourceWithNoJs":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const MCPCallout=()=>null;const Availability=()=>null;function _createMdxContent(props){const _components={code:`code`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,ResponseExample,_MdxComponentBoundary}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(_MdxComponentBoundary,{name:`MCPCallout`,children:_jsx(MCPCallout,{})}),`\n`,_jsx(_MdxComponentBoundary,{name:`Availability`,children:_jsx(Availability,{plan:`Standard and above`,color:`green`})}),`\n`,_jsxs(ResponseExample,{children:[_jsx(CodeBlock,{filename:`Success`,numberOfLines:`10`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`10`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"risk_level\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"low\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"recommendation\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"accept\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"execution_ms\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`120`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),_jsx(CodeBlock,{filename:`Error`,numberOfLines:`6`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`101`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"invalid_key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"The API Key is missing or invalid.\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{MCPCallout,Availability,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":"Profanity Detection","description":"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.\n\nAPI v2 returns `risk_level` and `recommendation` for the submitted text (no legacy score-only or word-list fields).","api":"POST https://v2.greipapi.com/score/text","openapi":"openapi/v2.json POST /score/text","href":"/api-reference/v2/endpoint/scoring/profanity"}}}},"mdxExtracts":{"tableOfContents":[{"title":"Authentication","slug":"authentication","depth":2,"children":[{"title":"JSON body","slug":"json-body","depth":3,"children":[]},{"title":"Response properties","slug":"response-properties","depth":3,"children":[]}]}],"panel":{"content":"export const MCPCallout = () => {\n return \u003cdiv class=\"callout my-4 px-5 py-4 overflow-hidden rounded-2xl flex gap-3 border border-[rgba(192, 132, 252, 0.2)] bg-[rgba(192, 132, 252, 0.1)] dark:border-[#c084fc4d] dark:bg-[#c084fc1a] text-[#6005BB] dark:text-[#FFFFFF]\" data-callout-type=\"callout\">\n \u003cdiv class=\"mt-0.5 w-4\" data-component-part=\"callout-icon\">\n \u003csvg class=\"h-4 w-4 !m-0 shrink-0 bg-[#c084fc] [mask-image:url('https://d3gk2c5xim1je2.cloudfront.net/v7.1.0/duotone/fire.svg')] [-webkit-mask-image:url('https://d3gk2c5xim1je2.cloudfront.net/v7.1.0/duotone/fire.svg')] [mask-repeat:no-repeat] [-webkit-mask-repeat:no-repeat] [mask-position:center] [-webkit-mask-position:center]\">\u003c/svg>\n \u003c/div>\n \u003cdiv class=\"text-sm prose dark:prose-invert min-w-0 w-full [\u0026_kbd]:bg-background-light dark:[\u0026_kbd]:bg-background-dark text-[#6005BB] dark:text-[#FFFFFF]\" data-component-part=\"callout-content\">\n \u003cspan data-as=\"p\">\n Want to skip the docs? Use the{\" \"}\n \u003ca class=\"link mint-text-xs border-[#C792FC]\" href=\"/docs-mcp-server\">\n \u003cb>MCP Server\u003c/b>\n \u003c/a>\n \u003c/span>\n \u003c/div>\n \u003c/div>;\n};\nexport const Availability = ({plan, color}) => {\n const colorMap = {\n green: \"text-green-700 dark:text-green-400\",\n blue: \"text-blue-700 dark:text-blue-400\",\n purple: \"text-purple-700 dark:text-purple-400\"\n };\n return \u003cdiv dir=\"ltr\" data-orientation=\"horizontal\" class=\"p-4 px-5 mt-0 md:mt-4 flex flex-col sm:flex-row flex-wrap gap-2 relative overflow-hidden rounded-2xl border border-gray-950/10 dark:border-white/10 my-0 bg-gray-50 dark:bg-white/5 dark:codeblock-dark text-gray-950 dark:text-gray-50 codeblock-light text-sm prose prose-gray dark:prose-invert font-semibold no-wrap-words\">\n Endpoint availability:{\" \"}\n \u003cspan class={` ${colorMap[color]} flex-1`}>{plan}\u003c/span>\n \u003ca class=\"custom-link text-xs\" href=\"https://greip.io/detailed-pricing\">\n Learn more\n \u003c/a>\n \u003c/div>;\n};\n\n\u003cMCPCallout />\n\n\u003cAvailability plan=\"Standard and above\" color=\"green\" />\n\n\u003cResponseExample>\n ```json Success theme={null}\n\n {\n \"success\": true,\n \"data\": {\n \"risk_level\": \"low\",\n \"recommendation\": \"accept\"\n },\n \"execution_ms\": 120\n }\n\n ```\n\n ```json Error theme={null}\n {\n \"success\": false,\n \"code\": 101,\n \"type\": \"invalid_key\",\n \"description\": \"The API Key is missing or invalid.\"\n }\n ```\n\u003c/ResponseExample>\n"},"codeExamples":{"response":{"type":"ResponseExample","children":[{"filename":"Success","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"10\">\u003cspan class=\"line\">\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"risk_level\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"low\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"recommendation\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"accept\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"execution_ms\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">120\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003c/span>\n\u003c/code>\u003c/pre>"},{"filename":"Error","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"6\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">101\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"invalid_key\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"description\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"The API Key is missing or invalid.\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]}},"endpoint":{"title":"Profanity Detection","path":"/score/text","servers":[{"url":"https://v2.greipapi.com"}],"method":"post","request":{"security":[{"title":"Bearer Auth","parameters":{"header":{"Authorization":{"type":"http","scheme":"bearer","description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token."}},"query":{},"cookie":{}}}],"parameters":{"query":{},"header":{},"cookie":{},"path":{}},"body":{"application/json":{"schemaArray":[{"type":"object","properties":{"text":[{"type":"string","description":"The text you want to filter. Sample value: `This is a sample text without profanity!`","required":true,"placeholder":"The text"}],"format":[{"type":"string","description":"The format command is used to get a response in a specific format. Expected values: `JSON` , `XML` , `CSV` , or `Newline` For more information please refer to Response format .","placeholder":"Response format"}],"mode":[{"type":"string","description":"The mode command is used in the development stage to simulate the integration process before releasing it to the production environment. Expected values: `live` , or `test` . For more information please refer to Development environment .","placeholder":"Environment"}],"source":[{"type":"string","description":"Optional label for your own analytics or support correlation (for example a product or channel name).","placeholder":"Integration label"}]}}],"examples":{"example":{"value":{"text":"\u003cstring>","format":"\u003cstring>","mode":"\u003cstring>","source":"\u003cstring>"}}}}}},"response":{"200":{"application/json":{"schemaArray":[{"type":"object","properties":{"success":[{"type":"boolean","description":"`true` when the request succeeded; `false` on error.","required":true}],"data":[{"type":"object","properties":{"risk_level":[{"type":"string","description":"Overall profanity risk for the submitted text ( `low` , `medium` , or `high` ). Greip classifies matches into levels: the highest severity wins (risky phrases and words first, then medium-risk, then low-risk). A clean text returns `low` .","required":true}],"recommendation":[{"type":"string","description":"Suggested action ( `accept` , `review` , or `reject` ) derived from `risk_level` .","required":true}]},"required":true}],"execution_ms":[{"type":"integer","description":"Time taken to process the request (milliseconds).","required":true}]}}],"examples":{"example":{"value":{"success":true,"data":{"risk_level":"\u003cstring>","recommendation":"\u003cstring>"},"execution_ms":123}}}}}},"deprecated":false}},"jsLinks":[],"dynamicCss":".mint-relative {\n position: relative\n}\n.\\!mint-m-0 {\n margin: 0px !important\n}\n.mint-my-0 {\n margin-top: 0px;\n margin-bottom: 0px\n}\n.mint-my-4 {\n margin-top: 1rem;\n margin-bottom: 1rem\n}\n.mint-mt-0 {\n margin-top: 0px\n}\n.mint-mt-0\\.5 {\n margin-top: 0.125rem\n}\n.mint-flex {\n display: flex\n}\n.mint-h-4 {\n height: 1rem\n}\n.mint-w-4 {\n width: 1rem\n}\n.mint-w-full {\n width: 100%\n}\n.mint-min-w-0 {\n min-width: 0px\n}\n.mint-flex-1 {\n flex: 1 1 0%\n}\n.mint-shrink-0 {\n flex-shrink: 0\n}\n.mint-flex-col {\n flex-direction: column\n}\n.mint-flex-wrap {\n flex-wrap: wrap\n}\n.mint-gap-2 {\n gap: 0.5rem\n}\n.mint-gap-3 {\n gap: 0.75rem\n}\n.mint-overflow-hidden {\n overflow: hidden\n}\n.mint-rounded-2xl {\n border-radius: 1rem\n}\n.mint-border {\n border-width: 1px\n}\n.mint-border-\\[\\#C792FC\\] {\n --tw-border-opacity: 1;\n border-color: rgb(199 146 252 / var(--tw-border-opacity, 1))\n}\n.mint-border-gray-950\\/10 {\n border-color: rgb(3 7 18 / 0.1)\n}\n.mint-bg-\\[\\#c084fc\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(192 132 252 / var(--tw-bg-opacity, 1))\n}\n.mint-bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1))\n}\n.mint-p-4 {\n padding: 1rem\n}\n.mint-px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem\n}\n.mint-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem\n}\n.mint-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem\n}\n.mint-text-xs {\n font-size: 0.75rem;\n line-height: 1rem\n}\n.mint-font-semibold {\n font-weight: 600\n}\n.mint-text-\\[\\#6005BB\\] {\n --tw-text-opacity: 1;\n color: rgb(96 5 187 / var(--tw-text-opacity, 1))\n}\n.mint-text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity, 1))\n}\n.mint-text-gray-950 {\n --tw-text-opacity: 1;\n color: rgb(3 7 18 / var(--tw-text-opacity, 1))\n}\n.mint-text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21 128 61 / var(--tw-text-opacity, 1))\n}\n.mint-text-purple-700 {\n --tw-text-opacity: 1;\n color: rgb(126 34 206 / var(--tw-text-opacity, 1))\n}\n.dark\\:mint-border-\\[\\#c084fc4d\\]:is(.dark *) {\n border-color: #c084fc4d\n}\n.dark\\:mint-border-white\\/10:is(.dark *) {\n border-color: rgb(255 255 255 / 0.1)\n}\n.dark\\:mint-bg-\\[\\#c084fc1a\\]:is(.dark *) {\n background-color: #c084fc1a\n}\n.dark\\:mint-bg-white\\/5:is(.dark *) {\n background-color: rgb(255 255 255 / 0.05)\n}\n.dark\\:mint-text-\\[\\#FFFFFF\\]:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1))\n}\n.dark\\:mint-text-blue-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity, 1))\n}\n.dark\\:mint-text-gray-50:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(249 250 251 / var(--tw-text-opacity, 1))\n}\n.dark\\:mint-text-green-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(74 222 128 / var(--tw-text-opacity, 1))\n}\n.dark\\:mint-text-purple-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(192 132 252 / var(--tw-text-opacity, 1))\n}\n@media (min-width: 640px) {\n .sm\\:mint-flex-row {\n flex-direction: row\n }\n}\n@media (min-width: 768px) {\n .md\\:mint-mt-4 {\n margin-top: 1rem\n }\n}","openApiReferenceData":{"operation":{"operationId":"scoreText","summary":"Profanity detection","security":["7bd46dfe-b85d-4926-8ebf-e9f2bd217e99"],"requestBody":"dee358e7-4bb1-4a99-9ff4-f0bde175e4ab","responses":{"200":"d6b10e7e-554c-43be-aed4-a9f4efdaab7a"},"tags":["Scoring"],"method":"post","type":"path","servers":["7df2b09a-498b-4e3b-934b-02c56bdebc9f"],"path":"/score/text","baseUrlOptions":["https://v2.greipapi.com"],"title":"Profanity detection","description":"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform.\n\nAPI v2 returns `risk_level` and `recommendation` for the submitted text (no legacy score-only or word-list fields).","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExamples":[{"dropdown":false,"language":"json","code":{"type":"pre","key":null,"ref":null,"props":{"className":"shiki shiki-themes github-light-default dark-plus","style":{"backgroundColor":"#ffffff","--shiki-dark-bg":"#0B0C0E","color":"#1f2328","--shiki-dark":"#D4D4D4"},"language":"json","children":{"type":"code","key":null,"ref":null,"props":{"language":"json","numberOfLines":"10","children":[{"type":"span","key":"0","ref":null,"props":{"className":"line","children":null}},"\n",{"type":"span","key":"2","ref":null,"props":{"className":"line","children":{"type":"span","key":null,"ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":"{"}}}},"\n",{"type":"span","key":"4","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"success\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0550AE","--shiki-dark":"#569CD6"},"children":"true"}},{"type":"span","key":"3","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":","}}]}},"\n",{"type":"span","key":"6","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"data\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": {"}}]}},"\n",{"type":"span","key":"8","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"risk_level\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0A3069","--shiki-dark":"#CE9178"},"children":"\"low\""}},{"type":"span","key":"3","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":","}}]}},"\n",{"type":"span","key":"10","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"recommendation\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0A3069","--shiki-dark":"#CE9178"},"children":"\"accept\""}}]}},"\n",{"type":"span","key":"12","ref":null,"props":{"className":"line","children":{"type":"span","key":null,"ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":" },"}}}},"\n",{"type":"span","key":"14","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"execution_ms\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0550AE","--shiki-dark":"#B5CEA8"},"children":"120"}}]}},"\n",{"type":"span","key":"16","ref":null,"props":{"className":"line","children":{"type":"span","key":null,"ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":"}"}}}},"\n",{"type":"span","key":"18","ref":null,"props":{"className":"line","children":null}},"\n"]}}}},"filename":"Success"},{"dropdown":false,"language":"json","code":{"type":"pre","key":null,"ref":null,"props":{"className":"shiki shiki-themes github-light-default dark-plus","style":{"backgroundColor":"#ffffff","--shiki-dark-bg":"#0B0C0E","color":"#1f2328","--shiki-dark":"#D4D4D4"},"language":"json","children":{"type":"code","key":null,"ref":null,"props":{"language":"json","numberOfLines":"6","children":[{"type":"span","key":"0","ref":null,"props":{"className":"line","children":{"type":"span","key":null,"ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":"{"}}}},"\n",{"type":"span","key":"2","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"success\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0550AE","--shiki-dark":"#569CD6"},"children":"false"}},{"type":"span","key":"3","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":","}}]}},"\n",{"type":"span","key":"4","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"code\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0550AE","--shiki-dark":"#B5CEA8"},"children":"101"}},{"type":"span","key":"3","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":","}}]}},"\n",{"type":"span","key":"6","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"type\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0A3069","--shiki-dark":"#CE9178"},"children":"\"invalid_key\""}},{"type":"span","key":"3","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":","}}]}},"\n",{"type":"span","key":"8","ref":null,"props":{"className":"line","children":[{"type":"span","key":"0","ref":null,"props":{"style":{"color":"#116329","--shiki-dark":"#9CDCFE"},"children":" \"description\""}},{"type":"span","key":"1","ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":": "}},{"type":"span","key":"2","ref":null,"props":{"style":{"color":"#0A3069","--shiki-dark":"#CE9178"},"children":"\"The API Key is missing or invalid.\""}}]}},"\n",{"type":"span","key":"10","ref":null,"props":{"className":"line","children":{"type":"span","key":null,"ref":null,"props":{"style":{"color":"#1F2328","--shiki-dark":"#D4D4D4"},"children":"}"}}}},"\n"]}}}},"filename":"Error"}],"responseExampleType":"mdx"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","isRequired":true,"uniqueKey":"text","typeLabel":"string"},"format":{"type":"string","uniqueKey":"format","typeLabel":"string"},"mode":{"type":"string","uniqueKey":"mode","typeLabel":"string"},"source":{"type":"string","uniqueKey":"source","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"text":"\u003cstring>","format":"\u003cstring>","mode":"\u003cstring>","source":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"d6b10e7e-554c-43be-aed4-a9f4efdaab7a":{"description":"OK","content":{"application/json":{"schema":{"type":"object","required":["success","data","execution_ms"],"properties":{"success":{"type":"boolean","example":true,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"data":{"type":"object","description":"Endpoint-specific payload.","additionalProperties":true,"isRequired":true,"uniqueKey":"data","typeLabel":"object"},"execution_ms":{"type":"integer","example":42,"isRequired":true,"uniqueKey":"execution_ms","typeLabel":"integer"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"data":{},"execution_ms":42}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"7bd46dfe-b85d-4926-8ebf-e9f2bd217e99":{"bearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"7df2b09a-498b-4e3b-934b-02c56bdebc9f":{"url":"https://v2.greipapi.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi/v2.json"},"subdomain":"greip","siteName":"Greip API Documentation","title":"Profanity Detection - Greip API Documentation","navMaps":{"firstHrefInVersion":{"API v2":{"href":"/api-reference/v2/endpoint/scoring/profanity","matchLevel":0},"API v1":{"href":"/api-reference/v1/endpoint/scoring/profanity","matchLevel":1}},"firstHrefInLanguage":{}},"lastModified":"2026-10-19T11:52:21.196Z","originalFileLocation":"api-reference/v2/endpoint/scoring/profanity.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=\"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform. API v2 returns risk_level and recommendation for the submitted text (no legacy score-only or word-list fields).\">\u003cmeta data-mint-head name=\"application-name\" content=\"Greip API Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_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=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Profanity Detection - Greip API Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform. API v2 returns risk_level and recommendation for the submitted text (no legacy score-only or word-list fields).\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Greip API Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://greip.mintlify.site/_mintlify/api/og/v2?division=Risk+Scoring\u0026amp;title=Profanity+Detection\u0026amp;description=This+method+helps+safeguard+your+website+or+app+by+detecting+offensive+or+inappropriate+language+in+user+inputs.+By+screening+for+profanity+and+other+harmful+co\u0026amp;theme=7cf64e10dd7828d12f27732f\u0026amp;signature=67606cfacc6d60669d0b50c6f717900242a660c1b90dbc623001e3525831fe1d\">\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=\"Profanity Detection - Greip API Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform. API v2 returns risk_level and recommendation for the submitted text (no legacy score-only or word-list fields).\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://greip.mintlify.site/_mintlify/api/og/v2?division=Risk+Scoring\u0026amp;title=Profanity+Detection\u0026amp;description=This+method+helps+safeguard+your+website+or+app+by+detecting+offensive+or+inappropriate+language+in+user+inputs.+By+screening+for+profanity+and+other+harmful+co\u0026amp;theme=7cf64e10dd7828d12f27732f\u0026amp;signature=67606cfacc6d60669d0b50c6f717900242a660c1b90dbc623001e3525831fe1d\">\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=\"/mintlify-assets/_mintlify/favicons/greip/dtlfq1ulgjuPqDEw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Greip API Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#008CFF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/v2/endpoint/scoring/profanity.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.greip.io/#organization\",\"name\":\"Greip API Documentation\",\"url\":\"https://docs.greip.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/greip/c6lrSS26RYZXvB76/logo/light.svg?fit=max\u0026auto=format\u0026n=c6lrSS26RYZXvB76\u0026q=85\u0026s=f19b2aac5c5fcac6cccf3ef89dc6cc9a\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.greip.io#website\",\"name\":\"Greip API Documentation\",\"url\":\"https://docs.greip.io\",\"publisher\":{\"@id\":\"https://docs.greip.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity#webpage\",\"url\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity\",\"name\":\"Profanity Detection\",\"description\":\"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform. API v2 returns risk_level and recommendation for the submitted text (no legacy score-only or word-list fields).\",\"dateModified\":\"2026-10-19T11:52:21.196Z\",\"isPartOf\":{\"@id\":\"https://docs.greip.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Risk Scoring\",\"item\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/ip-reputation\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Profanity Detection\",\"item\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity#apireference\",\"headline\":\"Profanity Detection\",\"name\":\"Profanity Detection\",\"description\":\"This method helps safeguard your website or app by detecting offensive or inappropriate language in user inputs. By screening for profanity and other harmful content before it’s made public, you can maintain a positive user environment, protect your brand, and prevent abusive behavior on your platform. API v2 returns risk_level and recommendation for the submitted text (no legacy score-only or word-list fields).\",\"url\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity\",\"mainEntityOfPage\":{\"@id\":\"https://docs.greip.io/api-reference/v2/endpoint/scoring/profanity#webpage\"},\"dateModified\":\"2026-10-19T11:52:21.196Z\",\"publisher\":{\"@id\":\"https://docs.greip.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.greip.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Greip API Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Greip API Documentation","nav":{"global":{"anchors":[{"anchor":"Integrations","icon":"gears","href":"https://greip.io/integrations/all"},{"anchor":"Changelog","icon":"clock-rotate-left","href":"https://changelog.greip.io"},{"anchor":"Server Status","icon":"signal-bars","href":"https://status.greip.io"},{"anchor":"Articles","icon":"rss","href":"https://greip.io/blog"},{"anchor":"Dictionary","icon":"book-open","href":"https://greip.io/blog/section/Dictionary"},{"anchor":"FAQ","icon":"circle-question","href":"https://greip.io/faq"}]},"versions":[{"version":"API v2","default":true,"tag":"Recommended","tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Data Lookup","pages":[{"title":"IP Geolocation","api":"GET https://v2.greipapi.com/geo/ip","openapi":"openapi/v2.json GET /geo/ip","href":"/api-reference/v2/endpoint/data-lookup/geoip"},{"title":"IP Lookup","api":"GET https://v2.greipapi.com/lookup/ip/{ip}","openapi":"openapi/v2.json GET /lookup/ip/{ip}","href":"/api-reference/v2/endpoint/data-lookup/ip"},{"title":"Bulk IP Lookup","api":"GET https://v2.greipapi.com/geo/ip/bulk","openapi":"openapi/v2.json GET /geo/ip/bulk","href":"/api-reference/v2/endpoint/data-lookup/bulk-ip"},{"title":"ASN Lookup","api":"GET https://v2.greipapi.com/lookup/asn/{asn}","openapi":"openapi/v2.json GET /lookup/asn/{asn}","href":"/api-reference/v2/endpoint/data-lookup/asn"},{"title":"IBAN Validation","api":"GET https://v2.greipapi.com/lookup/iban/{iban}","openapi":"openapi/v2.json GET /lookup/iban/{iban}","href":"/api-reference/v2/endpoint/data-lookup/iban"},{"title":"BIN / IIN Lookup","api":"GET https://v2.greipapi.com/lookup/bin/{bin}","openapi":"openapi/v2.json GET /lookup/bin/{bin}","href":"/api-reference/v2/endpoint/data-lookup/bin"},{"title":"Country Data","api":"GET https://v2.greipapi.com/lookup/countries/{country_code}","openapi":"openapi/v2.json GET /lookup/countries/{country_code}","href":"/api-reference/v2/endpoint/data-lookup/country"},{"title":"Domain Lookup","api":"GET https://v2.greipapi.com/lookup/domains/{domain}","openapi":"openapi/v2.json GET /lookup/domains/{domain}","href":"/api-reference/v2/endpoint/data-lookup/domain"},{"title":"Free Get-IP","icon":"heart","iconType":"duotone","api":"GET https://v2.greipapi.com/ip","openapi":"openapi/v2.json GET /ip","href":"/api-reference/v2/endpoint/data-lookup/free-get-ip-method"}]},{"group":"Risk Scoring","pages":[{"title":"IP Scoring","api":"GET https://v2.greipapi.com/score/ip/{ip}","openapi":"openapi/v2.json GET /score/ip/{ip}","href":"/api-reference/v2/endpoint/scoring/ip-reputation"},{"title":"Email Scoring","api":"GET https://v2.greipapi.com/score/email/{email}","openapi":"openapi/v2.json GET /score/email/{email}","href":"/api-reference/v2/endpoint/scoring/email"},{"title":"Phone Scoring","description":"This method serves as an additional layer of protection in your system for validating phone numbers. It not only checks the syntax but also assesses the likelihood of the phone number being valid and operational.\n\nBy incorporating this scoring into your workflow, you can enhance fraud detection, reduce invalid inputs, and improve the overall quality of data captured.","api":"GET https://v2.greipapi.com/score/phone/{phone}","openapi":"openapi/v2.json GET /score/phone/{phone}","href":"/api-reference/v2/endpoint/scoring/phone"},{"title":"Profanity Detection","api":"POST https://v2.greipapi.com/score/text","openapi":"openapi/v2.json POST /score/text","href":"/api-reference/v2/endpoint/scoring/profanity"},{"title":"Payment Fraud Detection","description":"Prevent financial losses and protect your business by deploying AI-powered modules that analyze transaction patterns in real-time.\n\nThis method helps identify and block suspicious activities, mitigating the risk of fraudulent payments and ensuring a secure experience for both you and your customers.","api":"POST https://v2.greipapi.com/score/payments","openapi":"openapi/v2.json POST /score/payments","href":"/api-reference/v2/endpoint/scoring/payment"}]},{"group":"Account Management","pages":[{"title":"User Data Deletion","api":"DELETE https://v2.greipapi.com/account/users","openapi":"openapi/v2.json DELETE /account/users","href":"/api-reference/v2/endpoint/account/users/delete"}]}]},{"tab":"Knowledge Base","pages":[{"title":"Knowledge Base","href":"/knowledge-base/getting-started/introduction"}]},{"tab":"Integration Guide","pages":[{"title":"Integration Guide","href":"/integration-guide/timeline"}]},{"tab":"Packages \u0026 Libraries","pages":[{"title":"Packages \u0026 Libraries","href":"/packages-and-libraries/list-of-packages-and-libraries"}]}]},{"version":"API v1","tag":"Legacy","pages":[{"title":"API v1","href":"/api-reference/v1/endpoint/scoring/profanity"}]}]},"basePath":"","title":"Profanity Detection - Greip API Documentation","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-C79IUEr8.js","dist-DE3EVdvd.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-DK3K4Z1S.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","Page-Dr40SSJq.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","AssistantPageLink-fN9H9n9g.js"]}