API v1 is being deprecated. Greip will continue to support existing v1 integrations for now, but new endpoints, fields, and documentation updates ship on API v2 only. Switch the docs version to API v2 (recommended) or follow the Migrate from API v1 to v2 guide to upgrade your integration.
{ "data": { "isML": true, "text": "This is just a normal text", "totalBadWords": null, "riskScore": 0, "isSafe": true, "status": "success", "executionTime": 120 }}
{ "status": "error", "code": 101, "type": "invalid_key", "description": "The API Key is missing or invalid."}
{ "data": { "isML": true, "text": "This is just a normal text", "totalBadWords": null, "riskScore": 0, "isSafe": true, "status": "success", "executionTime": 120 }}
{ "status": "error", "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.
This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.
API v1 is being deprecated. Greip will continue to support existing v1 integrations for now, but new endpoints, fields, and documentation updates ship on API v2 only. Switch the docs version to API v2 (recommended) or follow the Migrate from API v1 to v2 guide to upgrade your integration.
{ "data": { "isML": true, "text": "This is just a normal text", "totalBadWords": null, "riskScore": 0, "isSafe": true, "status": "success", "executionTime": 120 }}
{ "status": "error", "code": 101, "type": "invalid_key", "description": "The API Key is missing or invalid."}
The format command is used to get a response in a specific format.Expected values: JSON, XML, or CSVFor more information please refer to Response Format.
The mode command is used to 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.
The callback command can help you make the response as a JSONP format.Expected values: any name that can be used as a function name in Javascript, e.g: myFunctionName.For more information please refer to JSONP Callback.
This method returns a score for the text you pass.We classify profanity into 4 different level. The first level contains the most risky words and phrases (risky). The second level contains the medium-risk words and phrases. Whereas, the third level contains the low-risk words.When you use the API, the response will the determine the score of the text you passed as follows:
riskScore = 0 means that this text is completely safe.
riskScode = 1 means that this is a high-risk text.
riskScode = 2 means that this is a medium-risk text.
riskScode = 3 means that this is a low-risk text.
Was this page helpful?
{"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/v1/endpoint/scoring/profanity","slug":"/api-reference/v1/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\nThis method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.","api":"GET /scoring/profanity","href":"/api-reference/v1/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 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\", _jsx(_components.p, {\n children: \"This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.\"\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`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Expandable,Heading,Note,ParamField,ResponseField}=_components;if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`3`,id:`query-parameters`,children:`Query Parameters`}),`\n`,_jsxs(ParamField,{query:`text`,type:`string`,placeholder:`The text`,required:true,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,{query:`scoreOnly`,type:`string`,default:`no`,placeholder:`The value`,id:`param-score-only`,children:[_jsx(_components.p,{children:`Returns only the score of the text and whether it’s safe or not.`}),_jsxs(_components.p,{children:[`Expected values: `,_jsx(_components.code,{children:`yes`}),`, or `,_jsx(_components.code,{children:`no`}),`.`]})]}),`\n`,_jsxs(ParamField,{query:`listBadWords`,type:`string`,default:`no`,placeholder:`The value`,id:`param-list-bad-words`,children:[_jsx(_components.p,{children:`Used to list the bad words in an array.`}),_jsxs(_components.p,{children:[`Expected values: `,_jsx(_components.code,{children:`yes`}),`, or `,_jsx(_components.code,{children:`no`}),`.`]})]}),`\n`,_jsxs(ParamField,{query:`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`}),`, or `,_jsx(_components.code,{children:`CSV`})]}),_jsxs(_components.p,{children:[`For more information please refer to `,_jsx(_components.a,{href:`/options/response-format`,children:`Response Format`}),`.`]})]}),`\n`,_jsxs(ParamField,{query:`mode`,type:`string`,default:`live`,placeholder:`Environment`,id:`param-mode`,children:[_jsx(_components.p,{children:`The mode command is used to 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`,_jsxs(ParamField,{query:`callback`,type:`string`,placeholder:`JSONP callback`,id:`param-callback`,children:[_jsx(_components.p,{children:`The callback command can help you make the response as a JSONP format.`}),_jsxs(_components.p,{children:[`Expected values: any name that can be used as a function name in Javascript, e.g: `,_jsx(_components.code,{children:`myFunctionName`}),`.`]}),_jsxs(_components.p,{children:[`For more information please refer to `,_jsx(_components.a,{href:`/options/jsonp-callback`,children:`JSONP Callback`}),`.`]})]}),`\n`,_jsx(Heading,{level:`3`,id:`response-properties`,children:`Response properties`}),`\n`,_jsxs(ResponseField,{name:`data`,type:`object`,required:true,id:`param-data`,children:[_jsxs(Expandable,{title:`properties`,defaultOpen:true,children:[_jsx(ResponseField,{name:`isML`,type:`boolean`,required:true,id:`param-is-ml`,children:_jsx(_components.p,{children:`A boolean value that indicates whether the detection is done by Machine Learning or not.`})}),_jsx(ResponseField,{name:`text`,type:`string`,required:true,id:`param-text-1`,children:_jsx(_components.p,{children:`The text you passed to the API.`})}),_jsxs(ResponseField,{name:`totalBadWords`,type:`number`,required:true,id:`param-total-bad-words`,children:[_jsx(_components.p,{children:`The total number of profane words found in the text.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Note:`}),` This field is only available when `,_jsx(_components.code,{children:`isML`}),` is `,_jsx(_components.code,{children:`true`}),`, otherwise you’ll get `,_jsx(_components.code,{children:`null`}),`.`]})]}),_jsx(ResponseField,{name:`riskScore`,type:`number`,required:true,id:`param-risk-score`,children:_jsx(_components.p,{children:`The risk score of the text you passed.`})}),_jsx(ResponseField,{name:`isSafe`,type:`boolean`,required:true,id:`param-is-safe`,children:_jsx(_components.p,{children:`A boolean value that indicates whether the text is safe or not.`})})]}),_jsxs(ResponseField,{name:`status`,type:`string`,required:true,id:`param-status`,children:[_jsx(_components.p,{children:`The response status.`}),_jsxs(_components.p,{children:[`Expected values: `,_jsx(_components.code,{children:`success`}),`, or `,_jsx(_components.code,{children:`error`}),`.`]})]}),_jsx(ResponseField,{name:`executionTime`,type:`integer`,required:true,id:`param-execution-time`,children:_jsx(_components.p,{children:`Time spent in milliseconds to process the data.`})})]}),`\n`,_jsxs(Note,{children:[_jsx(_components.p,{children:`This method returns a score for the text you pass.`}),_jsx(_components.p,{children:`We classify profanity into 4 different level. The first level contains the most risky words and phrases (risky). The second level contains the medium-risk words and phrases. Whereas, the third level contains the low-risk words.`}),_jsx(_components.p,{children:`When you use the API, the response will the determine the score of the text you passed as follows:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`riskScore = 0`}),` means that this text is completely safe.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`riskScode = 1`}),` means that this is a high-risk text.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`riskScode = 2`}),` means that this is a medium-risk text.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`riskScode = 3`}),` means that this is a low-risk text.`]}),`\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\nThis method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.","api":"GET /scoring/profanity","href":"/api-reference/v1/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 _components={a:`a`,p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Warning,_MdxComponentBoundary}=_components;if(!Warning)_missingMdxReference(`Warning`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`API v1 is being deprecated.`}),` Greip will continue to support existing v1 integrations for now, but new endpoints, fields, and documentation updates ship on `,_jsx(_components.strong,{children:`API v2`}),` only. Switch the docs version to `,_jsx(_components.strong,{children:`API v2`}),` (recommended) or follow the `,_jsx(_components.a,{href:`/migration`,children:`Migrate from API v1 to v2`}),` guide to upgrade your integration.`]})}),`\n`,_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\nThis method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.","api":"GET /scoring/profanity","href":"/api-reference/v1/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={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,..._provideComponents(),...props.components},{CodeBlock,ResponseExample,Warning,_MdxComponentBoundary}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!Warning)_missingMdxReference(`Warning`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`API v1 is being deprecated.`}),` Greip will continue to support existing v1 integrations for now, but new endpoints, fields, and documentation updates ship on `,_jsx(_components.strong,{children:`API v2`}),` only. Switch the docs version to `,_jsx(_components.strong,{children:`API v2`}),` (recommended) or follow the `,_jsx(_components.a,{href:`/migration`,children:`Migrate from API v1 to v2`}),` guide to upgrade your integration.`]})}),`\n`,_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:`11`,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:`11`,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:` \"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:` \"isML\"`}),_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:` \"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"This is just a normal text\"`}),_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:` \"totalBadWords\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_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:` \"riskScore\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_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:` \"isSafe\"`}),_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:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"success\"`}),_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:` \"executionTime\"`}),_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`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\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:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"error\"`}),_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\nThis method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.","api":"GET /scoring/profanity","href":"/api-reference/v1/endpoint/scoring/profanity"}}}},"mdxExtracts":{"tableOfContents":[{"title":"Query Parameters","slug":"query-parameters","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\u003cWarning>\n **API v1 is being deprecated.** Greip will continue to support existing v1 integrations for now, but new endpoints, fields, and documentation updates ship on **API v2** only. Switch the docs version to **API v2** (recommended) or follow the [Migrate from API v1 to v2](/migration) guide to upgrade your integration.\n\u003c/Warning>\n\n\u003cMCPCallout />\n\n\u003cAvailability plan=\"Standard and above\" color=\"green\" />\n\n\u003cResponseExample>\n ```json Success theme={null}\n {\n \"data\": {\n \"isML\": true,\n \"text\": \"This is just a normal text\",\n \"totalBadWords\": null,\n \"riskScore\": 0,\n \"isSafe\": true,\n \"status\": \"success\",\n \"executionTime\": 120\n }\n }\n ```\n\n ```json Error theme={null}\n {\n \"status\": \"error\",\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=\"11\">\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\"> \"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\"> \"isML\"\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\"> \"text\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"This is just a normal text\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"totalBadWords\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"riskScore\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"isSafe\"\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\"> \"status\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"success\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"executionTime\"\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\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\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\"> \"status\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"error\"\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":"/scoring/profanity","servers":[{"url":"https://greipapi.com"}],"method":"get","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":{"text":{"schema":[{"type":"string","description":"The text you want to filter Sample value: `This is a sample text without profanity!`","required":true,"placeholder":"The text"}]},"scoreOnly":{"schema":[{"type":"string","description":"Returns only the score of the text and whether it’s safe or not. Expected values: `yes` , or `no` .","placeholder":"The value"}]},"listBadWords":{"schema":[{"type":"string","description":"Used to list the bad words in an array. Expected values: `yes` , or `no` .","placeholder":"The value"}]},"format":{"schema":[{"type":"string","description":"The format command is used to get a response in a specific format. Expected values: `JSON` , `XML` , or `CSV` For more information please refer to Response Format .","placeholder":"Response format"}]},"mode":{"schema":[{"type":"string","description":"The mode command is used to 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"}]},"callback":{"schema":[{"type":"string","description":"The callback command can help you make the response as a JSONP format. Expected values: any name that can be used as a function name in Javascript, e.g: `myFunctionName` . For more information please refer to JSONP Callback .","placeholder":"JSONP callback"}]}},"header":{},"cookie":{},"path":{}},"body":{}},"response":{"200":{"application/json":{"schemaArray":[{"type":"object","properties":{"data":[{"type":"object","properties":{"isML":[{"type":"boolean","description":"A boolean value that indicates whether the detection is done by Machine Learning or not.","required":true}],"text":[{"type":"string","description":"The text you passed to the API.","required":true}],"totalBadWords":[{"type":"number","description":"The total number of profane words found in the text. Note: This field is only available when `isML` is `true` , otherwise you’ll get `null` .","required":true}],"riskScore":[{"type":"number","description":"The risk score of the text you passed.","required":true}],"isSafe":[{"type":"boolean","description":"A boolean value that indicates whether the text is safe or not.","required":true}],"status":[{"type":"string","description":"The response status. Expected values: `success` , or `error` .","required":true}],"executionTime":[{"type":"integer","description":"Time spent in milliseconds to process the data.","required":true}]},"required":true}]}}],"examples":{"example":{"value":{"data":{"isML":true,"text":"\u003cstring>","totalBadWords":123,"riskScore":123,"isSafe":true,"status":"\u003cstring>","executionTime":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}","subdomain":"greip","siteName":"Greip API Documentation","title":"Profanity Detection - Greip API Documentation","navMaps":{"firstHrefInVersion":{"API v2":{"href":"/api-reference/v2/endpoint/scoring/profanity","matchLevel":1},"API v1":{"href":"/api-reference/v1/endpoint/scoring/profanity","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-10-21T09:49:56.755Z","originalFileLocation":"api-reference/v1/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. This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.\">\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. This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.\">\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/v1/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. This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.\">\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/v1/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/v1/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/v1/endpoint/scoring/profanity#webpage\",\"url\":\"https://docs.greip.io/api-reference/v1/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. This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.\",\"dateModified\":\"2026-10-21T09:49:56.755Z\",\"isPartOf\":{\"@id\":\"https://docs.greip.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.greip.io/api-reference/v1/endpoint/scoring/profanity#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.greip.io/api-reference/v1/endpoint/scoring/profanity#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Risk Scoring\",\"item\":\"https://docs.greip.io/api-reference/v1/endpoint/scoring/ip-reputation\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Profanity Detection\",\"item\":\"https://docs.greip.io/api-reference/v1/endpoint/scoring/profanity\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.greip.io/api-reference/v1/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. This method uses Machine Learning (ML) to analyze text and determine whether it contains profanity. It returns a score for the text you pass, classifying it as safe or risky.\",\"url\":\"https://docs.greip.io/api-reference/v1/endpoint/scoring/profanity\",\"mainEntityOfPage\":{\"@id\":\"https://docs.greip.io/api-reference/v1/endpoint/scoring/profanity#webpage\"},\"dateModified\":\"2026-10-21T09:49:56.755Z\",\"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","pages":[{"title":"API v2","href":"/api-reference/v2/endpoint/scoring/profanity"}]},{"version":"API v1","tag":"Legacy","tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Data Lookup","pages":[{"title":"IP Geolocation","api":"GET /geoip","href":"/api-reference/v1/endpoint/data-lookup/geoip"},{"title":"IP Lookup","api":"GET /lookup/ip","href":"/api-reference/v1/endpoint/data-lookup/ip"},{"title":"Bulk IP Lookup","api":"GET /lookup/ip/bulk","href":"/api-reference/v1/endpoint/data-lookup/bulk-ip"},{"title":"ASN Lookup","api":"GET /lookup/asn","href":"/api-reference/v1/endpoint/data-lookup/asn"},{"title":"IBAN Lookup","api":"GET /lookup/iban","href":"/api-reference/v1/endpoint/data-lookup/iban"},{"title":"BIN/IIN Lookup","api":"GET /lookup/bin","href":"/api-reference/v1/endpoint/data-lookup/bin"},{"title":"Country Lookup","api":"GET /lookup/country","href":"/api-reference/v1/endpoint/data-lookup/country"},{"title":"Domain Lookup","api":"GET /lookup/domain","href":"/api-reference/v1/endpoint/data-lookup/domain"},{"title":"Free Get-IP","icon":"heart","iconType":"duotone","href":"/api-reference/v1/endpoint/data-lookup/free-get-ip-method"}]},{"group":"Risk Scoring","pages":[{"title":"IP Reputation","api":"GET /lookup/ip/threats","href":"/api-reference/v1/endpoint/scoring/ip-reputation"},{"title":"Email Scoring","api":"GET /scoring/email","href":"/api-reference/v1/endpoint/scoring/email"},{"title":"Phone Number 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 /scoring/phone","href":"/api-reference/v1/endpoint/scoring/phone"},{"title":"Profanity Detection","api":"GET /scoring/profanity","href":"/api-reference/v1/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 /scoring/payment","href":"/api-reference/v1/endpoint/scoring/payment"}]},{"group":"Account Management","pages":[{"title":"User Data Deletion","api":"DELETE /account/users/delete","href":"/api-reference/v1/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"}]}]}]},"basePath":"","title":"Profanity Detection - Greip API Documentation","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff"],"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"]}