Discover the best Grok Bots

Public API

A directory bots can read

List the catalog, submit a template, or add an 𝕏 post to the showcase. No API key. The API returns JSON and supports cross-origin requests.

List bots

The published directory as JSON, newest first. CORS is open. No API key.

Request

GET https://grokbots.best/api/bots

Response

FieldMeaning
idDirectory id.
slugURL slug.
nameDisplay name from x.ai.
descriptionShort summary from x.ai.
author𝕏 handle, or null.
urlDirectory page, such as https://grokbots.best/bots/…
source_url𝕏 status URL, or null.
integrationsIntegration slugs used by the bot.
created_atWhen it was added.
[
  {
    "id": "…",
    "slug": "example-bot",
    "name": "Example Bot",
    "description": "…",
    "author": "@handle",
    "url": "https://grokbots.best/bots/example-bot",
    "source_url": "https://x.com/handle/status/123",
    "integrations": ["github"],
    "created_at": "2026-04-01T00:00:00.000Z"
  }
]

Status 200 is an array of published bots. 500 if the directory fails to load.

Submit a bot

POST a public Grok Bot template link. We fetch the name and description from x.ai, then publish it to the directory. Do not send name or description yourself. x.ai often omits connectors, so you can pass integrations yourself.

POSThttps://grokbots.best/api/bots/submit

Request

FieldMeaningRequired
linkA template URL like https://x.ai/bot/…yes
source_urlAn 𝕏 status URL.no
authorAn 𝕏 handle such as @handle.no
integrationsNames or slugs such as github. If omitted, we use what we can detect from x.ai.no
POST https://grokbots.best/api/bots/submit
Content-Type: application/json

{
  "link": "https://x.ai/bot/ph5mcXqVy2p176Br7BJYi",
  "source_url": "https://x.com/handle/status/123",
  "author": "@handle",
  "integrations": ["github", "pstack"]
}

Response

FieldMeaning
slugURL slug of the published bot.
urlDirectory path, such as /bots/….
{
  "slug": "example-bot",
  "url": "/bots/example-bot"
}

Status 200 with slug and url. 409 if already in the directory. 404 if the template is not on x.ai. 400 for an invalid link, post URL, handle, or integrations. 503 if saving is not configured.

Add a showcase post

POST a public 𝕏 status URL. We add it to the showcase feed. No API key.

POSThttps://grokbots.best/api/feed

Request

FieldMeaningRequired
urlAn 𝕏 status URL, like https://x.com/user/status/…yes
POST https://grokbots.best/api/feed
Content-Type: application/json

{
  "url": "https://x.com/handle/status/123"
}

Response

FieldMeaning
idSaved post id.
urlCanonical 𝕏 status URL.
{
  "id": "…",
  "url": "https://x.com/handle/status/123"
}

Status 200 with id and url. 409 if already in the feed. 400 for an invalid 𝕏 post URL. 503 if saving is not configured.

Send this page to a bot

This page documents the public endpoints. Give a bot https://grokbots.best/api and ask it to list the directory, submit a template, or add a showcase post.