{"uid":"cap_FNIqtKbPUIqrWc1NNeHqt","slug":"user-agent-bot-detection-04a5467d","name":"User-Agent Bot Detection","description":"Detect whether a User-Agent belongs to a known bot, crawler, AI agent or HTTP tool, and if so return its name and category (search, social, seo, ai, monitoring, tool, …).","url":"https://useragent.openverbs.com/v1/is-bot","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","required":["ua"],"properties":{"ua":{"type":"string","description":"The User-Agent header string."}},"additionalProperties":false},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.002","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.002/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_-PN9eRIymFcE5SSGeUQUM","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.002","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Detects whether a given User-Agent header string belongs to a bot or automated client","exampleAgentPrompt":"Can you check if this user agent string is a bot: 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'?","exampleUseCases":[{"title":"Filter bot traffic before processing","prompt":"Before logging this analytics event, check if the user agent 'Mozilla/5.0 (compatible; SemrushBot/7~bl; +http://www.semrush.com/bot.html)' is a bot so I can skip recording it."},{"title":"Block scrapers on API gateway","prompt":"Can you tell me if the user agent 'python-requests/2.28.0' is a bot? I want to block automated scrapers from hitting my API."},{"title":"Validate human user in onboarding flow","prompt":"A new signup just came in with user agent 'Dalvik/2.1.0 (Linux; U; Android 11)' — is that a bot or a real user? I need to decide whether to trigger the welcome email."}],"resultDescription":"A classification result indicating whether the provided User-Agent string is identified as a bot, likely including a boolean is-bot flag and potentially a confidence score or bot type classification.","failureModes":["Missing or empty 'ua' field returns validation error","Unknown or ambiguous user agent strings may result in uncertain classification","Very new or custom bot user agents may not be recognized","Malformed JSON body returns 400-level error","Rate limiting or payment failure returns 402/429 errors"],"whenToPreferThis":"Choose this endpoint when you need a quick, lightweight check on whether a specific User-Agent string belongs to a bot or automated client — ideal for real-time request filtering, analytics deduplication, or access control logic where you only have the User-Agent header available and need an instant verdict without full behavioral analysis.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T18:41:22.450Z","isFirstParty":false}