BashBrainTeammatesPricingDevelopersGet a test key

Conversations

Ask Bash in a conversation, follow its reply as it happens, and stop it.

Send Authorization: Bearer vk_test_... on every call. Every route of Conversations.

POST/v1/conversations/{conversation_id}/stopStop the reply and every piece of work the conversation started.

Your API key, or a session's token, scope runtime or all. On the card: ask. Every call here is a checked sample.

Request2 fields

Path

conversation_idstringrequiredThe conversation's id (conv_...).
Type
string

Headers

Idempotency-KeystringSend the same key to retry this call safely for 24 hours.
Type
string
Answers 2003 fields
idstringThe conversation (conv_...).
Type
string
object"conversation.stop"Always conversation.stop.
Type
"conversation.stop"
stopped_workstring[]The tasks the stop ended (task_...).
Type
string[]
TypeScript
await vestra.user('traveller-42').ask('Find me a hotel near the airport.').stop();
Python
vestra.user("traveller-42").ask("Find me a hotel near the airport.").stop()
CLI
vestra ask --stop conv_8f2k
HTTP
# Ask for one of your users. Their Bash is created the first time you name them. With stream: true, the# response streams this turn's events as they happen, and ends when the turn is over.curl -N "$VESTRA_BASE_URL/v1/conversations" \  -H "Authorization: Bearer $VESTRA_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "user_id": "traveller-42",    "message": "My 6am flight got cancelled. What should I do?",    "stream": true  }' # Ask a follow-up. It goes to the same conversation.curl -N "$VESTRA_BASE_URL/v1/conversations/conv_8f2k/messages" \  -H "Authorization: Bearer $VESTRA_API_KEY" \  -H "Content-Type: application/json" \  -d '{ "message": "Can I get a refund for it?", "stream": true }' # Stop a reply and its work. This stops the reply and every task the conversation started.curl -X POST "$VESTRA_BASE_URL/v1/conversations/conv_8f2k/stop" \  -H "Authorization: Bearer $VESTRA_API_KEY" # Ask for your company. Leave user_id out, and the job goes to your company's own Bash.curl "$VESTRA_BASE_URL/v1/conversations" \  -H "Authorization: Bearer $VESTRA_API_KEY" \  -H "Content-Type: application/json" \  -d '{ "message": "Write a two-line notice for our travellers about storm delays at Mumbai airport today." }' # Ask for many users at once. Each user gets their own conversation. If Bash asks one of them a question,# that item waits for the answer.curl "$VESTRA_BASE_URL/v1/batches" \  -H "Authorization: Bearer $VESTRA_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "items": [      { "user_id": "traveller-42", "message": "A storm may delay flights from Mumbai today. What should I do before I leave for the airport? Two lines, in general: no need to look up my booking." },      { "user_id": "traveller-77", "message": "A storm may delay flights from Pune today. What should I do before I leave for the airport? Two lines, in general: no need to look up my booking." }    ]  }'
MCP
{  "method": "tools/call",  "params": {    "name": "ask",    "arguments": {      "user": "traveller-42",      "message": "My 6am flight got cancelled. Get me on the next one."    }  }}