---
title: "Spam check"
full: true
_openapi:
  method: POST
  toc: []
  structuredData:
    headings: []
    contents:
      - content: "Evaluates an email subject line and body copy against deterministic spam rules, trigger words, URL shorteners, and caps ratios. Public and unauthenticated; rate limited per IP. Nothing is stored."
_apiData:
  document: "https://reloop.sh/api/tools/openapi/json"
  operationData: [{"path":"/api/tools/v1/spam-check","method":"post"}]
  parameterList: [{"name":"subject","type":"string","required":false,"description":"Email subject line to evaluate.","location":"body","maxLength":1000,"example":"Your monthly analytics report is ready"},{"name":"body","type":"string","required":false,"description":"Email body text or copy to evaluate.","location":"body","maxLength":50000,"example":"Hi Alex, your weekly report has been generated..."}]
  responseMap: {"200":{"description":"Response for status 200","schema":{"score":0,"grade":"example_grade","verdict":"inbox_ready","verdictLabel":"example_verdictLabel","breakdown":{"subjectScore":0,"contentScore":0,"linkScore":0,"formattingScore":0},"metrics":{"wordCount":0,"charCount":0,"subjectLength":0,"linkCount":0,"triggerWordCount":0,"capsPercentage":0,"readingTimeSec":0},"categoryCounts":{"urgency":0,"shady":0,"overpromise":0,"money":0,"outreach":0},"detectedTriggers":[{"word":"example_word","originalMatch":"example_originalMatch","category":"urgency","categoryLabel":"example_categoryLabel","severity":"high","startIndex":0,"endIndex":0,"context":"subject"}],"issues":[{"category":"trigger_word","severity":"high","title":"example_title","detail":"example_detail","recommendation":"example_recommendation"}],"recommendations":["example_recommendations"]}},"400":{"description":"Response for status 400","schema":{"message":"Contact already exists","why":"A contact with this email already exists in your organization.","fix":"Use a different email address or update the existing contact instead.","link":"https://reloop.sh/docs/api/contacts"}},"429":{"description":"Response for status 429","schema":{"message":"Contact already exists","why":"A contact with this email already exists in your organization.","fix":"Use a different email address or update the existing contact instead.","link":"https://reloop.sh/docs/api/contacts"}}}
  codeSamples: []
---
> For the complete documentation index, see [llms-docs.txt](/llms-docs.txt) or the site index [llms.txt](/llms.txt). Full docs corpus: [llms-full-docs.txt](/llms-full-docs.txt). Prefer markdown URLs (append `.md`) for agent consumption. Product skill: [skill.md](/skill.md).


{/* This file was generated by the OpenAPI doc generator. Do not edit this file directly. Run `bun run generate:api-docs` to regenerate. */}

<APIPage />
