Skip to main content
POST
Get service map topology

Restrictions

Usage

  • ServiceMap is an optional subsystem: a deployment without redis.servicemap configured returns ServiceUnavailable.
  • at currently only accepts now (or empty, which behaves identically).
  • direction currently only accepts outbound (or empty).
  • anchor.host_id must already be known to ServiceMap (have a current or recently retired graph); otherwise this returns ResourceNotFound.
  • depth (max 3), max_nodes (max 500), and max_edges (max 1000) bound the traversal; when a bound is hit, truncated=true and truncation_reasons explains why.
  • unresolved_mode=summary (vs. the default full) omits unresolved edges from edges and returns only a bounded sample in unresolved_endpoints.

Authorizations

app_key
string
query
required

App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.

Body

application/json

Query parameters for the outbound topology traversal.

anchor
object
required

Host (and optional entity) to start the traversal from.

network_scope_id
string

Optional integrity check: if set, must match the network scope already associated with anchor.host_id, or the request is rejected with InvalidParameter.

at
enum<string>

Time selector for the query. Only now is currently supported; omitting the field behaves the same.

Available options:
now
direction
enum<string>

Traversal direction. Only outbound is currently supported; omitting the field behaves the same.

Available options:
outbound
depth
integer
default:1

Maximum traversal depth from the anchor. Default 1, maximum 3.

Required range: x <= 3
max_nodes
integer
default:100

Maximum number of nodes to return before truncating. Default 100, maximum 500.

Required range: x <= 500
max_edges
integer
default:200

Maximum number of edges to examine before truncating. Default 200, maximum 1000.

Required range: x <= 1000
include_metrics
boolean
default:false

Whether to include the raw per-edge metrics payload in the response. Default false.

unresolved_mode
enum<string>
default:full

How unresolved edges are projected. full (default) includes them in edges and unresolved_endpoints; summary omits them from edges and returns only a bounded sample in unresolved_endpoints.

Available options:
summary,
full

Response

Success

Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.

request_id
string
required

Unique ID for this request. Mirrored in the Flashcat-Request-Id response header. Include it when reporting issues.

Example:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
required

The outbound dependency graph discovered around the anchor host.