Skip to content

Guide: Resolve with Response

The /v1/resolve-respond endpoint combines intent resolution with conversational output. It resolves a query to a tool call and generates a natural language response in one request.

Use /v1/resolve-respond when you need both:

  1. Structured tool call (for executing the action)
  2. Natural language response (for displaying to the user)

This is ideal for conversational interfaces where you want to confirm the action to the user before or after execution.

The /v1/resolve-respond endpoint:

  1. Resolves the query to a tool call (like /v1/resolve)
  2. Generates a natural language response with parameters substituted
  3. Returns both the tool call and the response text
{
"query": "Book a flight to Paris on Friday",
"toolsets": ["travel-v1"],
"persona": "travel-assistant"
}

Like /v1/resolve, you can provide optional context and history fields to improve resolution accuracy.

{
"query": "change it to Saturday instead",
"toolsets": ["travel-v1"],
"persona": "travel-assistant",
"context": "User is modifying an existing booking",
"history": [
{ "tool": "book_flight", "query": "Book a flight to Paris on Friday" }
]
}
  • context: Optional string (max 1,000 characters) providing situational information.
  • history: Optional array (max 5 entries) of recent tool calls, each with tool and query.
{
"resolved": {
"tool": "book_flight",
"parameters": {
"destination": "Paris",
"date": "Friday"
}
},
"response": {
"text": "I'll book a flight to Paris for Friday."
},
"metadata": {
"source": "cache",
"used_banks": [],
"latency_ms": 120,
"requests_used": 2,
"requests_remaining": 9998
}
}

You can customize the response style using personas. Define personas in your App config:

{
"personas": [
{
"name": "concise",
"description": "Brief, direct responses with no extra words"
},
{
"name": "friendly",
"description": "Warm, conversational responses with enthusiasm"
}
]
}

Then reference them in your request:

{
"query": "Book a flight to Paris",
"toolsets": ["travel-v1"],
"persona": "friendly"
}

If you omit the persona field, the system uses the “default” persona.

The /v1/resolve-respond endpoint costs 2 requests per call, as it performs both resolution and response generation.

Like /v1/resolve, the /v1/resolve-respond endpoint benefits from semantic caching. Similar queries return cached results instantly.