/nft/by-offersnft-getByOffersGiven an array of NFTokenOffer object IDs, returns the NFT each offer targets. Body: { "offerIds": ["A1B2…", "C3D4…"] } (max 100). Offer IDs that aren't indexed are silently omitted. Useful for enriching a list of open offers with their target NFT's metadata in one call.
| Name | Location | Details |
|---|---|---|
BearerAuth | Authorization header · bearer | JWT issued by the Honeycluster auth service for the `indexer` audience. Present as `Authorization: Bearer <token>`. |
| Field | Type | Description |
|---|---|---|
offerIdsrequired | string[] | Array of on-chain NFTokenOffer object IDs (64-char hex). Max 100 per request. |
{
"offerIds": [
"string"
]
}| Field | Type | Description |
|---|---|---|
items | object[] | Detail records for every input that matched. Unmatched IDs are silently omitted. |
items[]. | string | Internal UUID primary key for the NFT record. |
items[]. | string | XRPL NFTokenID (64-char hex). |
items[]. | string | Minter XRPL address. |
items[]. | string | Current owner XRPL address. |
items[]. | integer | Collection-grouping identifier assigned at mint. |
items[]. | integer | Sequential number within (issuer, taxon). |
items[]. | object | On-chain URI — `ipfs://…` or `https://…`. |
items[]. | integer | Royalty in basis points (0–50000; 50000 = 50%). |
items[]. | object | Decoded XLS-20 flag bits. |
items[]. | boolean | Flag bit 0x01 — issuer can burn the NFT. |
items[]. | boolean | Flag bit 0x02 — sale offers must be XRP-denominated. |
items[]. | boolean | Flag bit 0x04 — issuer trust line created on mint. |
items[]. | boolean | Flag bit 0x08 — NFT can be transferred by non-issuers. |
items[]. | boolean | Flag bit 0x10 — URI is mutable (XLS-46). |
items[]. | boolean | True when the NFT has been burned. |
items[]. | object | Timestamp of the burn as Unix-seconds, if any. |
items[]. | integer | Ledger sequence where the NFT was minted. |
items[]. | object | Hash of the NFTokenMint transaction that created this NFT. |
items[]. | object | Asset metadata and (optional) collection context. Present when `metadata=true` (the default); omitted entirely when the caller passes `metadata=false`. |
items[]. | object | |
items[]. | object | Display name from resolved metadata. |
items[]. | object | Project / artwork description. |
items[]. | object | CDN URL of the resolved metadata JSON (backed by S3). |
items[]. | object | CDN URL of the primary media asset (backed by S3). |
items[]. | object | External project or marketplace link. |
items[]. | object | Launchpad that minted this NFT (e.g. "xrp.cafe", "OnXRP", "XPMarket"). Resolved by minter address with fallback to attribution from upstream metadata. |
items[]. | object | |
items[]. | 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`. |
items[]. | integer | Lifetime count of sale transfers for this NFT (transfers with non-null amount). |
items[]. | string | Sum of XRP-denominated sale amounts across the NFT's lifetime, as a decimal XRP string. Excludes IOU sales. |
items[]. | object | XRP-denominated price of the most recent sale, decimal string. `null` when the most recent sale was IOU-denominated or no sales have been recorded. |
items[]. | object | Unix-seconds timestamp of the most recent sale (any currency). `null` when no sales recorded. |
items[]. | object | Lowest open XRP sell offer for **this specific NFT**, decimal XRP. `null` when no open XRP sell offer exists. Distinct from the collection-level floor returned by `/nft/collections`. |
{
"items": [
{
"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"
}
}
]
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}