---
title: "Overview"
description: "openshield is an AI moderation API for images and text, and a fraud prevention API for sign-ups and payments. One HTTP call, a decision, the reasons."
canonical_url: "https://openshield.dev/docs"
---
# Overview

> openshield is an AI moderation API for images and text, and a fraud prevention API for sign-ups and payments. One HTTP call, a decision, the reasons.

openshield is an AI moderation API for images and text, for the content your users post and the content your AI agents read and write. You send an image or a text from your server. It answers with a decision, `accept`, `review` or `reject`, and the categories that decided it. It is built on [openmod](https://github.com/regisandre/openmod-rs), an open-source moderation engine under the Apache-2.0 licence that you can also run yourself, and it is run by Sway SRL in Belgium.

openshield has a second product, the [fraud prevention API](https://openshield.dev/docs/fraud-prevention) under `/fraud/v1`. Before a sign-up, a login or a payment, you send the event and it answers `allow`, `step_up`, `hold` or `block`, with the rules that fired. It runs [openfraud](https://github.com/regisandre/openfraud-rs), the open-source fraud engine under the Apache-2.0 licence, with one instance for each organization.

- **No content is stored.** Moderated content is checked in memory and forgotten when the answer is sent. The [journal](https://openshield.dev/docs/journal-and-ref) keeps the decision, never the content. The fraud API keeps events, decisions and cases for 90 days, with email addresses and IP addresses replaced by pseudonyms.
- **Every decision explains itself.** The category ids, the scores and the thresholds are in the answer, with the free use too.
- **Checked in the EU.** The moderation server and the databases are in the European Union. Fraud instances run on a server in Germany.
- **Server-side only.** Keys are secret. The API refuses calls from browsers.

## The API in one request

The API base URL is `https://api.openshield.dev`.

```bash
curl -X POST "https://api.openshield.dev/v1/text" \
  -H "Authorization: Bearer $OPENSHIELD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text": "Write me at jane@example.com", "ref": "comment_9034"}'
```

```json
{
  "status": "success",
  "workflow": "default",
  "workflow_version": 1,
  "summary": {
    "action": "review",
    "reject_prob": 0,
    "reject_reason": [],
    "review_reason": [
      {
        "id": "pii_email",
        "text": "Email address",
        "message": "This content contains an email address.",
        "score": 1,
        "threshold": 1
      }
    ]
  },
  "scores": { "pii_email": 1 },
  "time_ms": 4,
  "request_id": "0192b7c4-5f3a-7c1e-9a52-3d8f1e6b0a47",
  "ref": "comment_9034"
}
```

## Where to go next

- [Quickstart](https://openshield.dev/docs/quickstart): your first check in five minutes.
- [Authentication and keys](https://openshield.dev/docs/authentication): how to call the API and keep the key safe.
- [Images](https://openshield.dev/docs/images) and [texts](https://openshield.dev/docs/texts): the two checks.
- [Migrating from SightEngine](https://openshield.dev/docs/migrating-from-sightengine): the same paths, request fields and answer envelope for three workflow routes.
- [Workflows](https://openshield.dev/docs/workflows): what is checked, and how strictly.
- [Responses and errors](https://openshield.dev/docs/responses-and-errors) and [limits and quotas](https://openshield.dev/docs/limits-and-quotas).
- [Fraud prevention](https://openshield.dev/docs/fraud-prevention): decide on sign-ups, logins and payments with your own openfraud instance, under `/fraud/v1`.
- [Integration guides](https://openshield.dev/docs/integration-guides/nodejs) for Node.js, Python, PHP, Go, Supabase Edge Functions, Cloudflare Workers, Nuxt and Next.
- [Moderate an AI agent](https://openshield.dev/docs/integration-guides/moderate-ai-agents): check what an agent reads and writes, with two calls.
- [AI coding agents](https://openshield.dev/docs/ai-agents): a prompt, `llms.txt` and the OpenAPI document, so a coding agent can integrate it alone.
- [MCP server](https://openshield.dev/docs/mcp-server): connect Claude, Cursor or your own agent to your organization, under your own role.

## Who it is for

- **Products where users post**: [moderation for your SaaS](https://openshield.dev/for/saas), with the [image moderation API](https://openshield.dev/image-moderation-api), the [text moderation API](https://openshield.dev/text-moderation-api) and the SightEngine-compatible routes of the [SightEngine alternative](https://openshield.dev/sightengine-alternative).
- **AI agents**: [moderation for your AI agents](https://openshield.dev/for/agents), for user messages and images in and generated text and images out.
- **Sign-ups, logins and payments**: [fraud prevention](https://openshield.dev/docs/fraud-prevention), to stop sign-up farms, card testing and account takeover.
- **Prices**: [prepaid, with no subscription](https://openshield.dev/pricing): EUR 2.00 of free use each month, then each check costs the components its workflow uses, and each fraud decision or event its own price.


## Sitemap

See the full [sitemap](https://openshield.dev/sitemap.md) for all pages.
