accounts
Get the funding ancestry graph for an account
get
/accounts/{account}/ancestry
operationId: account-getAncestry

Returns the funding ancestry of an XRPL account — the chain of accounts that funded this one, their funders, and so on up to maxDepth. Tracked-only: there is no equivalent native XRPL query, so untracked accounts return an empty { nodes: [], edges: [] } graph. Each parent edge represents the activating Payment that funded the child account.

Unlock protected endpoints

Enter your Bearer token once to enable every protected route in this API reference.

HTTP bearer

Saved for this browser tab only. The credential is never sent until you test an endpoint.

Authorizations
NameLocationDetails
BearerAuthAuthorization header · bearerJWT issued by the Honeycluster auth service for the `indexer` audience. Present as `Authorization: Bearer <token>`.
Path Parameters
NameTypeDefaultDescription
account
required
string
XRPL account address (r-address). Only tracked accounts produce ancestry nodes — there is no equivalent native XRPL query, so untracked accounts cannot be served.
Query Parameters
NameTypeDefaultDescription
maxDepth
integer5
Responses
200
application/json
Successful response
FieldTypeDescription
nodes
object[]
Ancestry nodes — the starting account plus each reachable ancestor up to `maxDepth`. Empty when the starting account is untracked.
nodes[].address
string
XRPL address of this ancestry node.
nodes[].depth
integer
Distance from the starting account (0 = the account itself, 1 = its direct funder, etc.).
nodes[].fundedAtLedger
object
Ledger sequence when this account was first funded. Null when the node is not indexed or the ledger was not captured.
nodes[].fundedTxHash
object
Hash of the activating Payment that funded this account. Null when not currently persisted.
edges
object[]
Directed `parent → child` funding edges between nodes. Empty when no ancestry was found.
edges[].parent
string
Funding account (the parent in the ancestry tree).
edges[].child
string
Funded account (the child — activated by a Payment from `parent`).
edges[].amountXrpDrops
object
Activating Payment amount in drops. Null when not currently persisted.
Example
Json
{
  "nodes": [
    {
      "address": "string",
      "depth": 0,
      "fundedAtLedger": 0,
      "fundedTxHash": "string"
    }
  ],
  "edges": [
    {
      "parent": "string",
      "child": "string",
      "amountXrpDrops": "string"
    }
  ]
}
400
application/json
Invalid input data
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}
401
application/json
Authorization not provided
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}
403
application/json
Insufficient access
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}
404
application/json
Not found
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}
500
application/json
Internal server error
FieldTypeDescription
message
string
The error message
code
string
The error code
issues
object[]
An array of issues that were responsible for the error
issues[].message
string
Example
Json
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}