Skip to content

The engine's health at a glance (owner only; `datanotes status` prints it): engine, database, journal, git sync, change feed, webhooks, named tokens, hand edits breaking the rules in the last 24 h, logs.

POST
/datanotes/status/
curl --request POST \
--url https://example.com/datanotes/status/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'

Reads what the engine already knows (nothing is checked again): hand edits are judged by the checks the change feed recorded with them. healthy is false when problems lists something. A named token is refused (403), even with maintain.

Media typeapplication/json
object

Example generated

{}

Done.

Media typeapplication/json

The engine’s health (datanotes status). Never a token or a secret.

object
healthy
required

False when something needs attention (problems).

boolean
problems
required

What needs attention, in words: git sync blocked, the store backup failing, a webhook failing, the change feed not running, hand edits breaking the tables’ rules, metastore.yaml unreadable.

Array<string>
engine
required
object
version
required
string
pid
required
integer | null
host_name
required
string | null
started_at
required
string
uptime_s
required
integer
http
required
object
host
required
string
port
required
integer | null
watch
required

How the service sees file changes: events or poll.

string | null
vault
required
string | null
settings_file
required
string | null
store
required

The engine’s store folder: settings, tokens, journal, transaction log, change feed, logs.

string | null
database_id
required

The database’s id (id in metastore.yaml); its store is found by it.

string | null
database_folder
required
string
database
required
object
metastore
required
string
moved

The last move of the database folder: by configure_database, or by hand (found again by its id).

object
from
required
string
to
required
string
at
required
string
by
required
string
Allowed values: configure_database hand
readable
required
boolean
error

Why metastore.yaml is not readable: not found, or the parse error.

string
tables
required
integer
views
required
integer
history_tables
required

Tables keeping a transaction log (history on).

integer
journal
required
object
window_hours
required
integer
operations
required

Operations journaled in the window.

integer
last
required
Any of:
object
migration_id
required
string
op
required
string
summary
required
string
executed_at
required
string
by

Harness / model of the agent.

string
git_sync
required
Any of:
object
enabled
required
boolean
repo
string
last_run_at
string
last_commit
string
last_push_at
string
blocked

Why the sync stopped (a pull conflict…), until a good cycle.

string
pending_operations
required
integer
store_backup
required
Any of:
object
enabled
required
boolean
interval_s
required

The seconds between two looks for changes: when something changed, a commit between two operations, then a push.

integer
remote
required

The remote, without credentials; null: commits in the store only.

string | null
last_commit
string
last_commit_at
string
last_push_at
string
pending_operations
required

Operations not committed yet.

integer
pending_commits
required

Commits not pushed yet.

integer
last_error

The last failure (a push refused, git missing), until a good push.

string
next_retry_at

When a failing push is tried again.

string
hint

How to fix last_error, when a person must (a file too large to push).

string
docs

Where to read more about last_error.

string
change_feed
required
object
running
required
boolean
reason

Why it is not running.

string
head
required

The newest sequence number, as list_changes answers it.

integer | null
webhooks
required
object
count
required
integer
failing
required
Array<object>
object
id
required
string
url_host
required

The URL’s host only.

string
failures
required

Failed attempts in a row (retried with backoff).

integer
last_error
string
last_delivery
string
cursor
required
integer
tokens
required

The named tokens (never their values).

Array<object>
object
name
required
string
write
required
Array<string>
ddl
required
boolean
maintain
required
boolean
last_seen
required
string | null
hand_edits
required
object
window_hours
required
integer
checked
required
boolean
reason

Why they were not looked at.

string
edits

Hand edits the change feed recorded in the window.

integer
rows

Rows whose latest change in the window is a hand edit that breaks the tables’ rules.

integer
violations
integer
latest
Array<object>
object
path
required
string
table
required
string | null
at
required
string
seq
required
integer
violations
required
integer
message
required
string
logs
required
object
folder
required

Log files in the store (fileLogEnabled).

string | null
console_log
required

--log file.

string | null
telemetry
required

Origin of the OTLP collector.

string | null

Example

{
"database": {
"moved": {
"by": "configure_database"
}
}
}

Bad input: the body is not a JSON object, or an argument is unknown, missing or of the wrong type.

Media typeapplication/json
object
error
required

What went wrong, for a person or an agent.

string

Example generated

{
"error": "example"
}

Missing or wrong bearer token.

Media typeapplication/json
object
error
required

What went wrong, for a person or an agent.

string

Example generated

{
"error": "example"
}

A named token beyond its permissions (the engine’s administration, tables outside its write patterns, schema changes without ddl).

Media typeapplication/json
object
error
required

What went wrong, for a person or an agent.

string

Example generated

{
"error": "example"
}

Unexpected error.

Media typeapplication/json
object
error
required

What went wrong, for a person or an agent.

string

Example generated

{
"error": "example"
}