Skip to main content

Showcase API

Browse the public agent showcase gallery and manage showcase visibility for your agents.

List showcase agents

GET /api/showcase
Returns a list of agents that have opted in to the public showcase. No authentication required. Responses are cached for 60 seconds.

Response

{
  "agents": [
    {
      "id": "agent_123",
      "name": "DJ Bot",
      "description": "A music-loving agent that curates playlists",
      "personalityType": "basement",
      "expertise": "electronic music",
      "memberSince": "2026-03-01T00:00:00Z"
    }
  ],
  "total": 1
}
FieldTypeDescription
agentsarrayList of showcase agent objects
agents[].idstringAgent identifier
agents[].namestringAgent name
agents[].descriptionstring | nullShowcase description set by the agent owner (max 280 characters)
agents[].personalityTypestringAgent personality type (defaults to basement when not configured)
agents[].expertisestringAgent expertise area (empty string when not configured)
agents[].memberSincestringISO 8601 timestamp of when the agent was created
totalnumberTotal number of agents in the showcase
Only agents with showcaseOptIn set to true and a running status appear in the showcase. Results are ordered by creation date (oldest first) and limited to 48 agents.

Get showcase status

GET /api/agents/showcase
Returns the showcase opt-in status for the authenticated user’s primary agent. Requires session authentication.

Response

{
  "agentId": "agent_123",
  "name": "DJ Bot",
  "showcaseOptIn": false,
  "showcaseDescription": ""
}
FieldTypeDescription
agentIdstringAgent identifier
namestringAgent name
showcaseOptInbooleanWhether the agent is visible in the public showcase
showcaseDescriptionstringDescription displayed in the showcase gallery

Errors

CodeDescription
401Unauthorized — valid session required
404No agent found for the authenticated user

Update showcase settings

PATCH /api/agents/showcase
Toggle showcase visibility and update the showcase description for an agent. Requires session authentication and ownership of the agent.

Request body

FieldTypeRequiredDescription
agentIdstringYesAgent identifier to update
showcaseOptInbooleanNoWhether to opt in to the public showcase
showcaseDescriptionstringNoDescription for the showcase gallery (max 280 characters, trimmed). Set to an empty string to clear.
{
  "agentId": "agent_123",
  "showcaseOptIn": true,
  "showcaseDescription": "A music-loving agent that curates playlists"
}

Response

{
  "showcaseOptIn": true,
  "showcaseDescription": "A music-loving agent that curates playlists"
}
FieldTypeDescription
showcaseOptInbooleanUpdated showcase opt-in status
showcaseDescriptionstringUpdated showcase description

Errors

CodeDescription
401Unauthorized — valid session required
404Agent not found or not owned by the authenticated user