Read its logs
Last updated 3 November 2026
Machines are not open yet. These pages describe Machines as they will open; until then, a create answers region_not_offered (422), “Machines are not offered in any region yet.”
Read what your Machine’s program printed, and what Tonbo did to the Machine, from its last few days or live, across sleeps and wakes. Reading never wakes the Machine.
Planned Not served yet. This page describes how it will work, as decided; until it is served, every request below answers 404 at https://api.us-east-1.tonbo.sh/v1. The Machines API reference lists each operation, marked Planned.
Read and follow
curl -sS "https://api.us-east-1.tonbo.sh/v1/machines/hello/logs?limit=100" \
-H "Authorization: Bearer $TONBO_API_KEY"
# Follow new lines as they come, across sleeps and wakes
curl -sSN "https://api.us-east-1.tonbo.sh/v1/machines/hello/logs?follow=true&cursor=<seq>" \
-H "Authorization: Bearer $TONBO_API_KEY"The answer is one JSON object per line, oldest first:
{"type":"line","seq":41,"t":"2026-11-03T09:30:02Z","activation":"0193a6c4e8a07d2c9f3b5a1e6d4c2b10","stream":"stdout","line":"starting","continued":false}
{"type":"line","seq":42,"t":"2026-11-03T09:30:03Z","activation":"0193a6c4e8a07d2c9f3b5a1e6d4c2b10","stream":"stdout","line":"listening on :8080","continued":false}
{"type":"eof","next_cursor":"42"}cursortakes a line’sseqand reads after it, andsincetakes a time.limitis 500 by default and at most 5,000.- Without
followthe answer ends with aneofline and thenext_cursorto read from next. Withfollow=trueit streams new lines, with atickline every 30 seconds, for at most 24 hours a connection; read on from the lastseqyou read. - A line holds at most 16 KiB; longer output is split, and every part but the last is marked
continued. activationreads one boot’s lines, theTonbo-Activationother answers name.
What the logs hold
stdoutandstderr: what the Machine’s own program, itscommand, printed.platform: what Tonbo did, written by Tonbo and never by the Machine: each wake and why one was refused, the image pulled, the program started and its exit code, a run out of memory, and each stop with its reason. A line a program prints claiming to beplatformis shown asstdout.
The output of commands and background processes is never logged: read it from their answer or their output (see Read its output).
How long they are kept
7 days, or the last 1 GiB a Machine, and deleted with the Machine. Writing them counts as the Machine’s stream writes (see Pricing). Reading them needs machines.connect, which every role holds, because what a program prints can include secrets.