Skip to main content

Organization

An organization is the top-level account entity in Bodyguard. It represents your company and owns all the resources associated with your contract — API keys, sources, channels, and usage quotas.

Source

A source represents a platform or integration registered with Bodyguard — for example, your mobile app or your website. Bodyguard provides a source identifier when you set up an integration. Sources belong to an organization and act as the container for your content. Each source contains one or more channels. Posts and authors are managed at the source level and are shared across all channels belonging to that source. A good rule of thumb: if two platforms share the same user base, they should be the same source. Moderation actions on authors — such as mute, ban, temporary mute, and temporary ban — are applied at the source level. An action taken against an author affects that author across every channel of the source, but never carries over to other sources.
To moderate the same person independently across different platforms — for example, banning a player in one game but not in another — use a separate source for each platform.

Channel

A channel is a logical subdivision of a source — typically mapping to a distinct content stream within your platform, such as a product page, a live stream, or a community forum. Every analyze request requires a channelId. Bodyguard uses the channel to apply the correct moderation configuration and to scope analytics and reporting. Channel identifiers are provided by Bodyguard when you configure your integration.

Reference

A reference is your own stable identifier for a piece of content, an author, or a post. You supply it in the request; Bodyguard stores it and echoes it back in webhooks and stored results so you can correlate moderation data with your own records.
We strongly recommend sending references for messages, posts, and authors. Explicit references unlock the full potential of the Bodyguard platform — including accurate deduplication, reliable author-level analytics, and consistent moderation history.

Publication date (publishedAt)

The publishedAt field records when a piece of content was originally published on your platform. Bodyguard uses it to associate messages and posts with the correct time window in analytics and reporting.
The value you send for a given message or post must remain exactly the same across all submissions and retries. Changing publishedAt for the same content causes it to appear as a duplicate in Bodyguard’s records.

Next steps

Analyze text

Classify a comment, message, or any piece of text.

Analyze an image

Classify an image by URL or by inline bytes, with optional OCR.

Analyze a username

Check a username for inappropriate or undesirable content.