Sandbox version
For experimental use only. Proceed with caution.
nftokens
List collections held by an address, with owned counts and sample tokens
get
/nft/collections-by-owner/{address}
operationId: nft-collectionsByOwner

Returns the set of NFT collections that address holds at least one non-burned token from, ranked by how many tokens they own in each. Each item has: metadata (name / description / image_url), metrics (token_count / floor_price / total_volume), owned_count (non-burned NFTs the address holds in this collection), and tokens[] — up to tokensLimit (default 10, max 50) NFT detail rows. Pass tokensLimit=0 to skip the per-collection token fetch. For a full paginated listing of an address's NFTs within a collection, use /nft/by-owner/{address}?issuer=…&taxon=….

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
address
required
string
XRPL classic address of the NFT owner.
Query Parameters
NameTypeDefaultDescription
cursor
string
limit
integer20
tokensLimit
integer10
metadata
boolean
metrics
boolean
Responses
200
application/json
Successful response
FieldTypeDescription
items
object[]
Page of results.
items[].id
string
Internal UUID primary key for the collection.
items[].issuer
string
XRPL address that minted the collection.
items[].taxon
integer
NFToken taxon grouping identifier.
items[].createdAt
integer
Record creation timestamp, Unix-seconds.
items[].updatedAt
integer
Record update timestamp, Unix-seconds.
items[].metadata
object
Curated collection metadata. Present when `metadata=true` (the default); omitted when the caller passes `metadata=false`.
items[].metadata.name
object
items[].metadata.description
object
items[].metadata.image_url
object
items[].metrics
object
Live collection metrics — token count, floor (computed from open XRP sell offers), and lifetime volume. Present when `metrics=true`; omitted when the caller leaves it at the default `false`.
items[].metrics.token_count
integer
items[].metrics.floor_price
object
items[].metrics.total_volume
string
items[].owned_count
integer
Number of non-burned NFTs from this collection currently held by the address.
items[].tokens
object[]
Up to `tokensLimit` NFTs the address holds in this collection (newest-minted first). Empty when `tokensLimit = 0`.
items[].tokens[].id
string
Internal UUID primary key for the NFT record.
items[].tokens[].token_id
string
XRPL NFTokenID (64-char hex).
items[].tokens[].issuer
string
Minter XRPL address.
items[].tokens[].owner
string
Current owner XRPL address.
items[].tokens[].taxon
integer
Collection-grouping identifier assigned at mint.
items[].tokens[].serial_number
integer
Sequential number within (issuer, taxon).
items[].tokens[].uri
object
On-chain URI — `ipfs://…` or `https://…`.
items[].tokens[].transfer_fee
integer
Royalty in basis points (0–50000; 50000 = 50%).
items[].tokens[].flags
object
Decoded XLS-20 flag bits.
items[].tokens[].burned
boolean
True when the NFT has been burned.
items[].tokens[].burned_at
object
Timestamp of the burn as Unix-seconds, if any.
items[].tokens[].minted_at_ledger
integer
Ledger sequence where the NFT was minted.
items[].tokens[].mint_tx_hash
object
Hash of the NFTokenMint transaction that created this NFT.
items[].tokens[].metadata
object
Asset metadata and (optional) collection context. Present when `metadata=true` (the default); omitted entirely when the caller passes `metadata=false`.
items[].tokens[].metrics
object
Per-NFT market state — sales count, lifetime volume, last sale, and the current lowest open XRP sell offer for this specific NFT. Present when `metrics=true`; omitted when the caller leaves it at the default `false`. Collection-scope metrics live on `/nft/collections` and `/nft/collection`.
nextCursor
object
Cursor to fetch the next page, or null if this is the last page.
Example
Json
{
  "items": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "issuer": "string",
      "taxon": 0,
      "createdAt": 1745798400,
      "updatedAt": 1745798400,
      "metadata": {
        "name": "string",
        "description": "string",
        "image_url": "string"
      },
      "metrics": {
        "token_count": 0,
        "floor_price": "string",
        "total_volume": "string"
      },
      "owned_count": 0,
      "tokens": [
        {
          "id": "00000000-0000-0000-0000-000000000000",
          "token_id": "string",
          "issuer": "string",
          "owner": "string",
          "taxon": 0,
          "serial_number": 0,
          "uri": "string",
          "transfer_fee": 0,
          "flags": {
            "burnable": false,
            "only_xrp": false,
            "trust_line": false,
            "transferable": false,
            "mutable": false
          },
          "burned": false,
          "burned_at": 1745798400,
          "minted_at_ledger": 0,
          "mint_tx_hash": "string",
          "metadata": {
            "asset": {
              "name": "string",
              "description": "string",
              "meta_url": "string",
              "media_url": "string",
              "external_url": "string",
              "marketplace": "string"
            },
            "collection": {
              "issuer": "string",
              "taxon": 0,
              "name": "string",
              "description": "string",
              "image_url": "string"
            }
          },
          "metrics": {
            "total_sales": 0,
            "total_volume_xrp": "string",
            "last_sale_price_xrp": "string",
            "last_sale_at": 1745798400,
            "current_floor_offer_xrp": "string"
          }
        }
      ]
    }
  ],
  "nextCursor": "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": []
}