{
 "schema_version": 1,
 "generated": "2026-10-26",
 "id": "nalinbhardwaj-botscent--allow-only-verified-agents",
 "repo": "nalinbhardwaj/botscent",
 "repo_url": "https://github.com/nalinbhardwaj/botscent",
 "repo_slug": "nalinbhardwaj-botscent",
 "title": "Let only verified AI agents through",
 "page_title": "How to let only verified AI agents through with Botscent",
 "summary": "Use Web Bot Auth verification so access decisions rely on signed requests, not names.",
 "who": "A site owner who wants to block unknown AI agents or give a named agent extra access, such as a higher rate limit.",
 "problem": "A user-agent string or declared name is easy to fake, so blocking or allowing by name is unreliable.",
 "outcome": "Request handlers that allow access only when the request's own verdict passes isVerified for the agent you choose.",
 "steps": [
  "Install the server half for your framework, such as `import { botscent } from 'botscent/express'` followed by `app.use(botscent())`.",
  "In the handler, read the request's own verdict with `await inspect(request)` from `botscent/server`.",
  "Gate access with `isVerified(own, 'chatgpt')` for one named agent, or `isVerified(own)` for any verified agent.",
  "Do not gate on `agent_name`, reasons or page reports, because those can be forged.",
  "Run `npx botscent check https://your-site.example/` and confirm the server half reports pass."
 ],
 "agent_prompt": "Using the botscent repo (nalinbhardwaj/botscent), gate <route path> so only requests where isVerified(own, '<agent name>') is true get through. Expected output: verified requests pass and unsigned requests are refused. Verify with `npx botscent check https://<your-site>/` that the server half reports pass.",
 "agents": [
  "any"
 ],
 "difficulty": "Advanced",
 "time": "1 hour",
 "basis": "readme",
 "caveat": "Named verification only works for agents whose keys are bundled in the installed release, so check the release before relying on a specific agent.",
 "category": "Software and DevOps",
 "tags": [
  "Software and DevOps"
 ],
 "lang": "typescript",
 "requirements": [
  "A site built with a supported framework such as Next.js, Express, Django or FastAPI",
  "npm for the TypeScript package or pip for the Python package",
  "Permission to edit your site's server code and page layout",
  "A running site URL to test against"
 ],
 "risk": "dual-use",
 "seen_in_the_wild": false,
 "mentioned_publicly": false,
 "risks": [
  {
   "tag": "credentials",
   "notice": "isVerified authenticates the operator's server, not the person or model in the session, and a captured signature can be replayed to the same host until it expires."
  }
 ],
 "best": false,
 "score": 0.9,
 "evidence": [],
 "url": "https://dedupedai.com/use-cases/nalinbhardwaj-botscent/allow-only-verified-agents/",
 "md": "https://dedupedai.com/use-cases/nalinbhardwaj-botscent/allow-only-verified-agents/index.md",
 "disclaimer": "Deduped lists open-source repositories that belong to other people. We do not own, maintain, audit, or vouch for any of them, and a repo appearing here is not an endorsement or a safety check. The use cases, steps, and prompts are written by AI and may be incomplete, outdated, or just wrong. Where a use case is marked \"Seen in the wild\", we link to public posts where someone described something similar, but we have not verified those posts and the use case itself is still our AI's own write-up. Use all of this at your own risk. Only run code, commands, or agents on systems and accounts you are authorized to use, and read the code and every command before you run it, especially anything that touches credentials, files, or the network. Nothing here is professional, security, legal, or financial advice. All trademarks and project names belong to their respective owners, and their use here does not imply affiliation. Content is provided as is, without warranties of any kind. Found a mistake, a safety problem, or something you want removed? Email hello@dedupedai.com and we will look at it promptly.",
 "api": "https://dedupedai.com/api/v1/usecases/nalinbhardwaj-botscent--allow-only-verified-agents.json",
 "api_version": "v1"
}
