Skip to main content
White Circle can analyze images alongside text content within a session check. This is useful when the combination of text and image matters for policy evaluation — an image alone might be safe, but paired with certain text it could become a violation.
To moderate images standalone (without text context), use the Artifact Check endpoint instead.

Using Artifacts in Session Checks

Include images in your session check using the artifact content part type. You can either send an image inline or reference a previously checked artifact. Note that you’re going to be charged for every inline artifact as if it was an independent API call to artifact check.

Inline Image

Send the image directly in the request. White Circle analyzes the image together with the text:
Base64 is also supported:
mime_type is optional — the image format is automatically detected from the content bytes.

Reference a Pre-checked Artifact

If you’ve already checked an image via Artifact Check, you can reference it by ID. White Circle uses the existing result and includes the image as context for the text evaluation — without re-checking it. If your entire API request contains only this reference to artifact without any new content at all, you will not be charged. By internal ID:
By external ID:
If multiple artifacts share the same external_artifact_id, White Circle uses the most recently created one in the same deployment.

Content and ID Combinations

The artifact content part supports different combinations of content, internal_artifact_id, and external_artifact_id:
When you provide both content and external_artifact_id (without internal_artifact_id), a new artifact is always created — even if an artifact with the same external_artifact_id already exists. The new artifact will be returned on future lookups by that external ID.
Only kind: "image" is supported for inline artifacts in session checks. For video or website content, use the Artifact Check endpoint and reference the result by ID.

Combining Text and Images

A single message can contain text and multiple images:
White Circle evaluates the message once, using all provided images as context for text evaluation. You can also mix inline and referenced artifacts:
Only the last message in the messages array is evaluated for policy violations. Images in earlier messages serve only as context.

Supported Formats

Maximum file size: 20 MB.

Response

Session checks now return an envelope with a session-level result and an artifact list:
For the full session envelope shape, see Check Content. Each object in artifacts[] uses the same response shape as Get Artifact Results. When both text and image contribute to the session-level violation, session.policies.*.flagged_source includes both:

Artifact Entry in artifacts[]

When you send an inline artifact content part, the session response includes the artifact details inside artifacts[]. Each artifact object follows this structure:

Best Practices

When moderating images, include any accompanying text. Context matters — an image might be acceptable in one context but violate policies in another.
For workflows where the same image appears in multiple sessions, check it once via Artifact Check, then reference it by internal_artifact_id in later session checks. White Circle reuses the existing result and includes the image as context for text evaluation.
If your application generates images, run them through White Circle before displaying them to users: