Report Publication
Learn how to report a publication for a specific reason.
The Lens API enables any authenticated user to report a publication for a specific reason. Refer to the examples below for a list of all available reasons.
You must be authenticated with a Profile to report a publication. See Profile Login for more information.
- React SDK
- JavaScript SDK
- API
The PublicationReportReason enum in the React SDK provides a list of all possible reasons for reporting a publication:
enum PublicationReportReason { // Illegal ANIMAL_ABUSE = 'ANIMAL_ABUSE', HARASSMENT = 'HARASSMENT', VIOLENCE = 'VIOLENCE', SELF_HARM = 'SELF_HARM', DIRECT_THREAT = 'DIRECT_THREAT', HATE_SPEECH = 'HATE_SPEECH',
// Sensitive content NUDITY = 'NUDITY', OFFENSIVE = 'OFFENSIVE',
// Fraud SCAM = 'SCAM', UNAUTHORIZED_SALE = 'UNAUTHORIZED_SALE', IMPERSONATION = 'IMPERSONATION',
// Spam MISLEADING = 'MISLEADING', MISUSE_HASHTAGS = 'MISUSE_HASHTAGS', UNRELATED = 'UNRELATED', REPETITIVE = 'REPETITIVE', FAKE_ENGAGEMENT = 'FAKE_ENGAGEMENT', MANIPULATION_ALGO = 'MANIPULATION_ALGO', SOMETHING_ELSE = 'SOMETHING_ELSE',}
You can use the useReportPublication hook to report a publication.
Available in @lens-protocol/react-web and @lens-protocol/react-native
import { PublicationReportReason, publicationId, useReportPublication,} from '@lens-protocol/react-web';
const { execute: report, loading } = useReportPublication();
const handleSubmit = async () => { const result = await report({ publicationId: publicationId('0x014e-0x0a'), reason: PublicationReportReason.FAKE_ENGAGEMENT, additionalComments: 'Human readable comments, if any.', });
if (result.isSuccess()) { alert('Publication reported!'); }};
<button onClick={handleSubmit} disabled={loading}> Report</button>
You can find the full example in the Lens SDK GitHub repository.
That's it—you've successfully reported a publication.