Skip to main content
This is a beta feature according to Algolia’s Terms of Service (“Beta Services”).
You can configure Agent Studio at two levels: app-wide and per agent. Both are updated from the API with changes taking effect immediately.

App settings

Configure app-wide behavior using the /configuration endpoint.

Data retention

Control how long Agent Studio retains your data:
curl -X PATCH 'https://{{APPLICATION_ID}}.algolia.net/agent-studio/1/configuration' \
  -H 'Content-Type: application/json' \
  -H 'x-algolia-application-id: {{APPLICATION_ID}}' \
  -H 'x-algolia-api-key: {{API_KEY}}' \
  -d '{ "maxRetentionDays": 30 }'
This operation requires an API key with the logs ACL.
ValueEffect
90 (default)Data retained for 90 days
60Data retained for 60 days
30Data retained for 30 days
0Privacy mode (see below)

Data affected by retention settings

DataBehavior
Completion cacheCached responses expire after the retention period
ConversationsConversation history deleted after the retention period
MessagesMessage content deleted after the retention period

Privacy mode (maxRetentionDays: 0)

When set to 0, Agent Studio operates in privacy mode:
  • Completion caching is turned off (every request calls the LLM)
  • Agent Studio saves conversation metadata but the message content isn’t stored.
  • Ideal for strict data privacy requirements

Conversation history

Conversations are automatically stored per retention settings. Each conversation gets an auto-generated title based on content. What’s stored:
  • Conversation metadata (ID, timestamps, user token)
  • Message content (user queries, assistant responses, tool calls)
  • Auto-generated titles for browsing
For GDPR compliance, users can export or delete their data with the GET /user-data/{userToken} and DELETE /user-data/{userToken} endpoints. For more information, see the API reference.

Agent settings

Configure individual agents using the /agents/{agentId} endpoint.

Agent properties

PropertyTypeDescription
namestringDisplay name (1-128 chars)
descriptionstringOptional description
providerIdUUIDLLM provider credentials
modelstringModel identifier. For example, gpt-5, gemini-2.5-pro
instructionsstringSystem prompt
configobjectFeature flags and settings
toolsarrayAlgolia search and custom tools

Update agent settings

Update any property without affecting others:
curl -X PATCH 'https://{{APPLICATION_ID}}.algolia.net/agent-studio/1/agents/{{agentId}}' \
  -H 'Content-Type: application/json' \
  -H 'x-algolia-application-id: {{APPLICATION_ID}}' \
  -H 'x-algolia-api-key: {{API_KEY}}' \
  -d '{ "instructions": "You are a helpful shopping assistant." }'
This operation requires an API key with the editSettings ACL.

Configuration options

The config object controls agent behavior:
OptionTypeDefaultDescription
sendUsagebooleanfalseInclude token usage in response
sendReasoningbooleanfalseInclude model reasoning (if supported)
useCachebooleantrueEnable response caching
featuresarray[]Experimental features
suggestionsobjectnullPrompt suggestions (see below)

Prompt suggestions

Generate contextual follow-up questions after each agent response. Suggestions help users discover capabilities and continue conversations naturally.
{
  "config": {
    "suggestions": {
      "enabled": true,
      "model": "gpt-5-mini"
    }
  }
}
When enabled, the agent streams a suggestions-chunk after the main response:
{
  "type": "suggestions-chunk",
  "suggestions": ["How do I filter by price?", "Show me trending products", "What categories are available?"]
}

Configuration options

OptionTypeDefaultDescription
enabledbooleanfalseEnable prompt suggestions
modelstringAgent’s modelModel for generating suggestions
system_promptstringBuilt-inCustom prompt for suggestion generation
Generation settings (suggestions.generation):
OptionRangeDefaultDescription
max_count1-53Number of suggestions
max_words5-158Max words per suggestion
timeout_seconds1-3010Timeout for generation
Context settings (suggestions.context):
OptionRangeDefaultDescription
max_messages1-5010Conversation history to include
include_tool_outputs-falseInclude tool results in context

Client-side handling

With AI SDK:
React
import { useChat } from '@ai-sdk/react';

function Chat() {
  const { messages, data } = useChat({ /* ... */ });

  // Suggestions arrive in the data stream
  const suggestions = data?.find(d => d.type === 'suggestions-chunk')?.suggestions;

  return (
    <>
      {/* Chat messages */}
      {suggestions && (
        <div className="suggestions">
          {suggestions.map(s => <button key={s}>{s}</button>)}
        </div>
      )}
    </>
  );
}
Use a faster, cheaper model (like gpt-5-mini) for suggestions. They don’t need the same reasoning depth as the main response.

Publish workflow

Agents have two states:
  • Draft: test changes in preview.
  • Published: live for API consumers.
curl -X POST 'https://{{APPLICATION_ID}}.algolia.net/agent-studio/1/agents/{{agentId}}/publish' \
  -H 'x-algolia-application-id: {{APPLICATION_ID}}' \
  -H 'x-algolia-api-key: {{API_KEY}}'
When you make changes to an agent using the PATCH /agents/{agentId} endpoint, you’re modifying the draft version of the agent. These changes aren’t visible to API consumers until you publish the agent using the POST /agents/{agentId}/publish endpoint.

See also

Last modified on February 10, 2026