Skip to content
Start here

Get bot details

client.radar.bots.get(stringbotSlug, BotGetParams { format } query?, RequestOptionsoptions?): BotGetResponse { bot }
GET/radar/bots/{bot_slug}

Retrieves the requested bot information.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
User Details WriteUser Details Read
ParametersExpand Collapse
botSlug: string

Bot slug.

maxLength100
query: BotGetParams { format }
format?: "JSON" | "CSV"

Format in which results will be returned.

One of the following:
"JSON"
"CSV"
ReturnsExpand Collapse
BotGetResponse { bot }
bot: Bot { accessLevel, categories, category, 12 more }
accessLevel: string | null

Who can operate the bot: DIRECT bots reach origins under their own identity, while INTERMEDIARY bots forward requests on behalf of another agent or a person.

categories: Array<string>

The categories of the bot.

Deprecatedcategory: string

The category of the bot. Deprecated: use categories.

contentUse: string | null

How the bot uses the content it fetches (e.g., immediate, reference or full).

description: string

A summary for the bot (e.g., purpose).

documentationUrl: string | null

The link to the bot documentation.

Deprecatedkind: string

The kind of the bot.

name: string

The name of the bot.

operator: string

The organization that owns and operates the bot.

DeprecatedoperatorUrl: string

The link to the bot documentation. Deprecated: use documentationUrl.

operatorWebsiteUrl: string | null

The link to the operator’s website.

slug: string

A kebab-case identifier derived from the bot name.

userAgentPatterns: Array<string>
userAgents: Array<string>
signatureAgentUrl?: string | null

The URL of the agent’s Web Bot Auth resource. Null for bots not verified via request signature.

Get bot details

import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

const bot = await client.radar.bots.get('gptbot');

console.log(bot.bot);
{
  "result": {
    "bot": {
      "accessLevel": "DIRECT",
      "categories": [
        "AI_CRAWLER"
      ],
      "category": "AI_CRAWLER",
      "contentUse": "full",
      "description": "OpenAI/ChatGPT's web crawler",
      "documentationUrl": "https://platform.openai.com/docs/bots",
      "kind": "AGENT",
      "name": "GPTBot",
      "operator": "OpenAI",
      "operatorUrl": "https://platform.openai.com/docs/bots",
      "operatorWebsiteUrl": "https://openai.com",
      "slug": "gptbot",
      "userAgentPatterns": [
        "GPTBot"
      ],
      "userAgents": [
        "GPTBot"
      ],
      "signatureAgentUrl": "https://example.com/signature-agent"
    }
  },
  "success": true
}
Returns Examples
{
  "result": {
    "bot": {
      "accessLevel": "DIRECT",
      "categories": [
        "AI_CRAWLER"
      ],
      "category": "AI_CRAWLER",
      "contentUse": "full",
      "description": "OpenAI/ChatGPT's web crawler",
      "documentationUrl": "https://platform.openai.com/docs/bots",
      "kind": "AGENT",
      "name": "GPTBot",
      "operator": "OpenAI",
      "operatorUrl": "https://platform.openai.com/docs/bots",
      "operatorWebsiteUrl": "https://openai.com",
      "slug": "gptbot",
      "userAgentPatterns": [
        "GPTBot"
      ],
      "userAgents": [
        "GPTBot"
      ],
      "signatureAgentUrl": "https://example.com/signature-agent"
    }
  },
  "success": true
}