Skip to main content
This documentation applies exclusively to Bodyguard resellers and partners. If you are a direct customer, you can safely ignore this page.
Reseller partners use the same three analyze endpoints as everyone else (/analyze/v1/text, /analyze/v1/image, /analyze/v1/username). The only difference: reseller API keys unlock a set of additional fields in the request body that tune how each endpoint behaves. Bodyguard configures a set of defaults for each organization and channel — industry vertical, language preferences, and many other advanced settings tailored to your use case. Reseller API keys let you override some of these defaults on a per-call basis, giving you fine-grained control when your traffic requires it. Settings not overridden in a request continue to use the values Bodyguard has configured for your channel. This page documents every reseller field. All fields are optional — pass only what you need.
These fields require a reseller API key. Standard API keys that send them will receive an error. If you are not sure which type of key you hold, contact your Bodyguard account manager.

Where each field applies

Fields passed on endpoints where they don’t apply are ignored.

industry

Sets the industry vertical of your platform. Bodyguard uses this to adapt the analysis model’s thresholds and context — for example, weapon references in GAMING are treated very differently from weapon references in MEDIA.

defaultLanguage

An ISO 639-1 language code that tells Bodyguard which language your content is most likely in. This does not force the language — auto-detection still runs on every piece of content. When the detector is confident (for example, clearly Arabic text), it uses the detected language. When the signal is weak or ambiguous (short texts, emoji only, content that could plausibly be one of several languages), the defaultLanguage tips the decision in its favour. Set it to the language your channel is predominantly in to improve detection accuracy on borderline cases.

customerContext

A free-form English description of the context in which your content is being moderated. The model uses it as an extra hint to disambiguate content whose meaning depends on the surrounding platform, audience, or editorial conventions. Applies to /analyze/v1/image and /analyze/v1/username. Typical things worth mentioning:
  • The type of platform and its audience (news site, sports club, gaming community, brand profile…).
  • Whether content is expected to include specific visual elements or usernames patterns (weapons in a combat game, nudity in an art publication, alcohol in a bar-owner brand account…).
  • Editorial or cultural conventions that would be surprising without context.
Keep it general and stable across requests — this is meant to describe your channel, not each individual piece of content. Aim for 512 to 1,024 characters and write in English for best results.

classificationsEnabled

Restricts image analysis to a subset of the standard image taxonomy. Only the classifications listed in this field are evaluated and returned — every other label is ignored, even if the image would otherwise match. This field overrides, for a single call, the list of classifications Bodyguard has configured for your organization, source, or channel. When it is omitted, Bodyguard falls back to that configured list. Each entry is the technical name of a standard image classification (for example "WEAPONS", "CSAM", "GRAPHIC_NUDITY").
With the settings above, the response will only ever contain WEAPONS and/or EXTREME_VIOLENCE_AND_GORE in its classifications array. Other classifications such as ALCOHOL or QR_CODE will not be evaluated. Enabling the CSAM classification may incur additional pricing.

ocrEnabled

Controls whether OCR (optical character recognition) runs on image inputs. When set to true, Bodyguard extracts all text from the image and runs a single text analysis on the full extracted content — the same analysis as the /analyze/v1/text endpoint. Additional pricing may apply. The OCR result is returned in the ocrAnalysis object of the image analysis response. It contains the extracted text and a textAnalysis object.
Example response with OCR results:

Full example

Combining all reseller fields on the image endpoint:
cURL