End a recording early

by Recall
recall/bot-leave

End a recording early is a tool from Recall, callable through the AgentSky API as recall/bot-leave and billed per call ($0).

Make a booked recorder leave its meeting now.

Overview

Requests that the recorder leave the meeting and stop capture. Usage remains pending until the supplier completes processing; bot time runs through done and transcription follows the recording lifecycle timestamps. Booking has no separate fee. A $2 prepayment is required; unused funds are returned at settlement. Usage is billed when the recording settles: $0.60 per hour the recorder holds a seat (from joining until supplier completion, including waiting and processing; fatal bot usage is waived) plus $0.18 per hour of recording lifecycle time, rounded to the nearest second without a minimum. Recording stops after two hours. A recorder that is never sent costs nothing; one that waits in a room nobody opens still costs the seat it held.

Confirmation that the recorder is leaving.

Input

These go in the input object of the run request.

FieldTypeRequiredDescription
run_idstringYesThe gateway runId returned by bot-create. The booking must belong to this user and, for session tokens, this session.
bot_idstringYesThe id returned when the recorder was booked.

Requests up to 1 MB.

Example

Use your own API key and a saved idempotency key for each new job. Replace image or media placeholders with your own publicly reachable HTTPS URLs. Keep the same key and request body when recovering a timeout.

# Set once per job; reuse this key and the identical body after a timeout.
: "${AGENTSKY_IDEMPOTENCY_KEY:?Set a unique, saved key for this job}"
curl --fail-with-body https://gateway.agentsky.dev/v1/run \
  -H "authorization: Bearer $AGENTSKY_API_KEY" \
  -H "content-type: application/json" \
  -H "Idempotency-Key: $AGENTSKY_IDEMPOTENCY_KEY" \
  -d '{"provider":"recall","endpoint":"bot-leave","input":{"run_id":"run_11111111222233334444555555555555","bot_id":"11111111-2222-3333-4444-555555555555"}}'
# If status is READY/RUNNING, poll GET /v1/runs/{runId} with the same API key.

Pricing

$0 per call using your plan when signed in. Read the final customer charge from price.amount.value after the run finishes. A RUNNING response is not the final bill.

Questions