Your first request
Send a message, get an answer, and keep the conversation open for follow-ups.
This example asks Fluso to explain three ways to check a source. You get a complete answer and a conversation you can continue.
1. Get access
For Cloud, create a developer token with Read and write access. For Fluso Local, pair a client after configuring its model provider.
Open your workspace's API reference to check availability in that release.
Start a Bash shell in a new, empty directory. You need cURL 7.87 or later, jq, and uuidgen.
Set the URL for your workspace:
export FLUSO_API_URL='https://api.fluso.ai/v1'For Fluso Dev, use https://api.dev.khichdi.cc/v1. For a local daemon, use http://127.0.0.1:4111/v1. The token must belong to that workspace.
Read your token without showing it or saving it in shell history:
read -r -s -p 'Fluso token: ' FLUSO_API_TOKEN
echo
export FLUSO_API_TOKEN2. Get an answer
Download the example from that workspace:
curl --fail --silent --show-error \
"$FLUSO_API_URL/examples/quickstart.sh" -o quickstart.sh &&
cat quickstart.shRead the script, then run it in the same Bash shell:
source quickstart.shIt prints Fluso's answer after reading every result page. If work needs attention, it prints the run's status instead. Stop on an error and use recovery before submitting again.
Keep this shell open. The other guides use the values and functions it provides:
| Name | What it gives you |
|---|---|
thread_id | The conversation to continue |
run_id | The work started by your message |
input_key, input_body | The exact request to reuse after a lost response |
api | An authenticated request to your chosen workspace |
wait_for_run, read_run_items | Wait for completion, then read all saved output |
For example, api "/threads/$thread_id/state" reads the conversation's state. api adds the base URL and bearer token. It uses ordinary cURL options.
A timeout does not cancel work. Do not rerun the quickstart to recover: it creates a new request. Read the saved run instead.
3. Continue from here
Send a follow-up to turn the answer into a checklist. You can also attach a document or create a reusable Agent.
What the example sends
It sends POST /v1/threads with an input message and a new Idempotency-Key. The response identifies the accepted work:
{
"thread_id": "thread_example",
"input_id": "message-1",
"run_id": "message-1",
"disposition": "running"
}Save the returned IDs. Do not assume input_id and run_id are equal.
202 means accepted. The example reads GET /v1/threads/{thread_id}/runs/{run_id} until completion, then reads the items for that run.
An idempotency key identifies one submitted message. Save it and the body before sending. Reuse both after a lost response. A new key starts new work.
Finish the example or use it in your application
Save any output you need. Download $FLUSO_API_URL/examples/cleanup.sh, read it, then run source cleanup.sh in the same shell. It deletes the example conversation and any files created by the file examples.
The scripts are examples, not an SDK. In your application, store tokens in a secret store and save request IDs durably. Keep credentials out of URLs, source control, logs, and screenshots.