Network
Mesh registration, the mesh HTTP server and WebSocket diagnostics.
On this page
Network diagnostics (host, mesh, WebSockets, agents)
/networkResponses
| Status | Description | Body | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Diagnostics | NetworkDiagnostics | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
meshrequiredobject | 4 fields of | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enabledSettingrequired | boolean | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
lanrequired | boolean | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
portrequired | integer | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
statusrequired | MeshStatus | null | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 fields of | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
meshEnabledrequired | boolean | |||||||||||||||||||||||||
meshServerRunningrequired | boolean | |||||||||||||||||||||||||
meshServerrequired | object | |||||||||||||||||||||||||
3 fields of | ||||||||||||||||||||||||||
runningrequired | boolean | |
portrequired | integer | |
hostrequired | string |
agentsrequired8 fields of agents
filePathrequired | string | |
handlerequired | string | |
did | string | |
agentId | string | |
icon | string | |
staterequired | string | Display (fleet-map) state of an agent |
status | string | |
model | string |
debugrequiredMesh manager internals (unstable)
websocketrequired3 fields of websocket
activeConnectionsrequired | integer | |
inboundConnectionsrequired | integer | |
outboundConnectionsrequired | integer |
agentsrequired10 fields of agents
agentIdrequired | string | |
handle | string | |
namerequired | string | |
filePathrequired | string | null | |
receiverequired | boolean | |
sendModerequired | string | null | |
networkrequired | string | null | |
wsConnectionsConfiguredrequired | integer | |
servingRoutesrequired | integer | |
publicServingEnabledrequired | boolean |
Errors 401 · 403
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/network" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Network diagnostics (same as GET /network)
/runtime/networkResponses
| Status | Description | Body |
|---|---|---|
| 200 | Diagnostics | NetworkDiagnostics |
Fields as in NetworkDiagnostics above. | ||
Errors 401 · 403
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/runtime/network" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Live mesh status
/network/meshResponses
| Status | Description | Body | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Mesh status | MeshStatus | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
agentsrequiredarray<MeshAgentStatus> | 8 fields of | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
filePathrequired | string | |
handlerequired | string | |
did | string | |
agentId | string | |
icon | string | |
staterequired | string | Display (fleet-map) state of an agent |
status | string | |
model | string |
debugrequiredMesh manager internals (unstable)
Errors 401 · 403 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/network/mesh" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Enable mesh registration (persisted)
/network/mesh/enablePersists meshEnabled: true and re-registers the loaded agents. No body.
Responses
| Status | Description | Body | ||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Enabled | MeshToggleResponse | ||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||
Errors 401 · 403 · 405 · 500 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 500 | Unexpected runtime failure | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl -X POST "http://127.0.0.1:7385/network/mesh/enable" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Disable mesh registration (persisted)
/network/mesh/disablePersists meshEnabled: false and unregisters mesh agents without unloading them. No body.
Responses
| Status | Description | Body |
|---|---|---|
| 200 | Disabled | MeshToggleResponse |
Fields as in MeshToggleResponse above. | ||
Errors 401 · 403 · 405 · 500 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 500 | Unexpected runtime failure | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl -X POST "http://127.0.0.1:7385/network/mesh/disable" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Recent tool calls per mesh agent
/network/mesh/recent-toolsQuery parameters
| Name | Type | Description |
|---|---|---|
limit | integer | Calls per agent (default 5) |
Responses
| Status | Description | Body | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Recent calls | RecentMeshToolsResponse | ||||||||||||||||||
| ||||||||||||||||||||
Errors 400 · 401 · 403 · 405 · 503
| 400 | Invalid request: missing or malformed field, query parameter or body. A body Fastify cannot parse gets Fastify's own shape (statusCode, code, error, message).bad_requestFST_ERR_CTP_EMPTY_JSON_BODY | |
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/network/mesh/recent-tools" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"This host's name and LAN addresses
/network/mesh/lan-addressesResponses
| Status | Description | Body | |||
|---|---|---|---|---|---|
| 200 | Addresses | LanAddressesResponse | |||
| |||||
Errors 401 · 403 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/network/mesh/lan-addresses" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Remote mesh runtimes discovered on the LAN
/network/mesh/discovered-runtimesResponses
| Status | Description | Body | |||
|---|---|---|---|---|---|
| 200 | Runtimes (the daemon does not discover yet: empty) | DiscoveredRuntimesResponse | |||
| |||||
Errors 401 · 403 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/network/mesh/discovered-runtimes" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Mesh HTTP server status
/network/serverResponses
| Status | Description | Body | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Status | MeshServerStatus | |||||||||
| |||||||||||
Errors 401 · 403 · 405 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl "http://127.0.0.1:7385/network/server" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"{
"running": true,
"port": 7295,
"host": "127.0.0.1"
}Start the mesh HTTP server (persisted)
/network/server/startThe mesh server (port 7295 by default, separate from this API) serves agent cards, health, ALF inbox delivery and agent web/API routes under /agents/{handle}/*. It is on by default; this persists meshServerEnabled: true. No body.
Responses
| Status | Description | Body | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Started | MeshServerActionResponse | ||||||||||||
| ||||||||||||||
Errors 401 · 403 · 405 · 500 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 500 | Unexpected runtime failure | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl -X POST "http://127.0.0.1:7385/network/server/start" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Stop the mesh HTTP server (persisted)
/network/server/stopPersists meshServerEnabled: false, so it stays off across restarts until started again. No body.
Responses
| Status | Description | Body | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Stopped | MeshServerActionResponse | ||||||||||||
| ||||||||||||||
Errors 401 · 403 · 405 · 500 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 500 | Unexpected runtime failure | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl -X POST "http://127.0.0.1:7385/network/server/stop" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"Restart the mesh HTTP server
/network/server/restartNo body.
Responses
| Status | Description | Body | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 200 | Restarted | MeshServerActionResponse | ||||||||||||
| ||||||||||||||
Errors 401 · 403 · 405 · 500 · 503
| 401 | Missing or wrong bearer token (unauthorized) | |
| 403 | The request guard refused it: Host header not allowed (host_not_allowed, DNS-rebinding protection) or a browser cross-site request (cross_origin)host_not_allowedcross_origin | |
| 405 | Not available on this daemon (the subsystem is read-only or lacks this operation) | |
| 500 | Unexpected runtime failure | |
| 503 | The subsystem is not configured on this daemon |
Error bodies use the error format.
Example
curl -X POST "http://127.0.0.1:7385/network/server/restart" \
-H "Authorization: Bearer $ADF_DAEMON_TOKEN"