Introduction
Welcome to the Bithomp API!
Bithomp API endpoints will give you access to information on addresses, NFTs, usernames, validators, services and more.
This API is built to complement the rippled API.
We have language bindings in Shell, JavaScript and PHP. You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.
Supported networks
XRPL MAINNET: https://bithomp.com/api/v2/, get your api key here
XAHAU MAINNET: https://xahauexplorer.com/api/v2/, get your api key here
XRPL TESTNET: https://test.bithomp.com/api/v2/, get your api key here
XRPL DEVNET: https://dev.bithomp.com/api/v2/, get your api key here
XAHAU TESTNET: https://test.xahauexplorer.com/api/v2/, get your api key here
Price and Limits
Bithomp API is FREE on the test networks!
For the mainnets we have the following API plans:
| Tier | Max requests / minute | Max request / 24h | NFT content plan | Price / month |
|---|---|---|---|---|
| Free (non-comercial use) | 10 | 2K | Free | 0 |
| Basic | 100 | 30K | Start | 30 EUR |
| Standard** | 400 | 120K | Basic | 100 EUR |
| Premium** | 1000 | 300K | Basic | 250 EUR |
| Enterprise** | 2000 | 600K | Basic | 500 EUR |
| Enterprise II** | 4000 | 1.2M | Standard | 1000 EUR |
| Enterprise III** | 8000 | 2.4M | Premium | 2000 EUR |
| On-demand Basic | N/A | N/A | Start | 0.0001 XRP or 0.003 XAH per request |
| On-demand Premium** | N/A | N/A | Start | 0.001 XRP or 0.03 XAH per request |
** On that plan the NFT, NFTs, NFT offers endpoints returns assets with direct URLs to cached and resized images and videos. You can get over 100 results for tokens, transactions, whales in one request. You can get historical activations. List of AMMs by their IDs etc.
NFT Content Plans
Those are not API plans and can be purchased separately (contact our support team to get one).
You only need this if you want to use our cached NFT images and videos from our CDN server.
Direct access to fast [resized and cached] images and videos:
- images (700px x 700px)
- videos (first 15 seconds)
- preview (image, otherwise a frame from a video, 360px x 360px)
- thumbnails (image, otherwise a frame from a video, 64px x 64px)
| Tier | Max Images day / month | Max Videos day / month | Max Thumbnails day / month | Price / month |
|---|---|---|---|---|
| Free (non-comercial use) | 500 / 10K | 100 / 2K | 2K / 20K | 0 |
| Start | 1K / 20K | 300 / 6K | 5K / 50K | 0 |
| Basic | 5K / 100K | 1.5K / 30K | 25K / 250K | 60 EUR |
| Standard | 10K / 200K | 3K / 60K | 50K / 500K | 100 EUR |
| Premium | 20K / 400K | 6K / 120K | 100K / 1M | 200 EUR |
Changelog
20th of October 2025
A new endpoint was added:
Get AMM Pool Data by Asset Pair
Get AMM Pool data by asset pair (e.g., XRP/RLUSD(issued by Ripple)).
15th of October 2025
A new query parameter: holders was added to the AMM Pools and AMM Pool API end-points.
Now you can get the number of unique LP token holders for each AMM.
13th of October 2025
5 new endpoints were added:
Get the list of Multi Purpose Tokens (MPT) issued on the XRPL. You can filter by issuer or currency, sort by holders count etc.
Get information for a specific Multi Purpose Token (MPT) issued on the XRPL. Icon, description, holders count, and more.
Search for Multi Purpose Tokens (MPT) by a part of currency, currencu code, issuer address, username, domain, service name.
Search for Multi Purpose Token (MPT) issuers by a part of address, username, domain, service name.
Search for Multi Purpose Token (MPT) currencies by a part of currency, currency code, issuer address, username, domain, service name.
8th of October 2025
2 new endpoints were added:
Get the distribution of XRP or XAH. Top Holders / Rich list.
Get the list of TOP holders for a specific issued token.
7th of October 2025
Get Free icons for MP Tokens for your projects. See the Free MP Token Images section below for more details.
6th of October 2025
6 new endpoints were added:
Get the list of UNL validators.
Get the list of all validators.
Get information about a specific amendment.
Get the list of amendments and their voting statusus
Get the list of all amendments.
Get a report of the current UNL (Unique Node List) validators on XAHAU.
5th of October 2025
A new query parameter: convertCurrencies was added to the Token and List of tokens API end-points.
Now you can get the price of a token in 40 fiat currencies. Just pass a fiat currency code (e.g., usd) to the convertCurrencies parameter.
30th of September 2025
The new query parameter: priceNativeCurrencySpot was added to the Get the list of objects owned by an address API end-point.
Now you can get the spot price in the native currency (XRP or XAH) for each token that the address owns. (if token exist and in our system and has at list a positive rating we will return its price in the Native Currency). It supports historical spot price too (if you send ledgerIndex or ledgerTimestamp).
22nd of August 2025
4 new endpoints were added:
Get the list of obligations (issued tokens)
Get the list of tokens that address can accept
Get the list of objects owned by an address
New order options were added to the List of tokens endpoint:
Now you can order by rating, trustlines count, holders count, sell volume, buy volume, total volume, unique traders count, unique sellers count, unique buyers count, market cap, price in native currency (XRP or XAH).
8th of August 2025
A new endpoint was added:
Get information and statistics for a specific token issued on the XRPL or Xahau. Icon, description, holders count, 24h volumes, price chnages and much more.
Free Images for Tokens and Addresses:
You can now use our CDN to display token and address images for free. See the Free Token Images and Free Address Profile Images sections below for more details.
19th of July 2025
A new endpoint was added:
Get the list of transactions by an address. This endpoint is available on paid plans only.
18th of July 2025
2 new endpoints were added:
Validate an NFT offer on the XRPL. This endpoint is available on paid plans only.
Validate NFT Offer (For XAHAU)
Validate an NFT offer on the Xahau. This endpoint is available on paid plans only.
17th of July 2025
4 new endpoints were added:
Get the list of tokens issued on the XRPL or Xahau. You can filter by issuer or currency, sort by holders count etc.
Search for tokens by a part of currency, currencu code, issuer address, username, domain, service name.
Search for token issuers by a part of address, username, domain, service name.
Search for currencies by a part of currency, currency code, issuer address, username, domain, service name.
29th of April 2025
4 new endpoints were added:
Get the list of the most significant transactions for the last 24 hours (Available on paid plans only).
Get the list of the Addresses that are receiving the most in the last 24 hours (Available on paid plans only).
Get the list of the Addresses that are sending the most in the last 24 hours (Available on paid plans only).
Get the list of the Addresses that submitting the most transactions in the last 24 hours (Available on paid plans only).
9th of April 2025
The new query parameter: obligations was added to the Address API end-point.
Now you can get obligations for an address. This includes the number of holders, tokens, and trustlines associated with the address. This feature is available only on paid API plans.
30th of January 2025
The new query parameter: ids was added to the AMMs API end-point.
Now you can get a list of AMMs by their IDs. (Available for the Standard plan and higher).
28th of January 2025
A new query parameter: bithomp was added to the Address API end-point.
That will return avatar link for an address and a status of Bithomp Pro.
22nd of October 2024
A new endpoint was added:
Get the list of token balances for a specific address. For Xahau it also includes locked balances (Token escrowed balances).
Free Token Images
You can easily display token images for XRPL and Xahau tokens using the Bithomp token image service. No registration is required.
Supported Image Types:
Bithomp Logos
Set by token issuers on Bithomp (with verified signatures).TOML Files
From issuers with a verified domain, including FirstLedger TOMLs.X (Twitter) Images
For projects registered on Bithomp that have an X handle set.Xaman Curated Assets
Official curated token images.Gravatar
If an account’s email hash is linked to a Gravatar image.Xaman Pro User Profiles
Profile images for Pro users’ issued tokens.Hashicons
Unique generated icons based on the address hash.
How to Use
Simply embed the following image tag in your website or app:
<img src="https://cdn.bithomp.com/issued-token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000000" alt="token logo" />
Custom Domain Option
For just €10/month, you can serve token images from your own domain (e.g., tokens.mydomain.com). Set up with a DNS record:
CNAME tokens cdn.bithomp.com
Then use the token image links like this:
<img src="https://tokens.mydomain.com/issued-token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C5553440000000000000000000000000000" alt="token logo" />
Contact our support team if you’d like to enable image hosting on your custom domain.
Free Address Profile Images
You can easily display profile images for XRPL and Xahau addresses using the Bithomp avatar service. No registration is required.
Supported Image Types:
- Bithomp Avatars
Anyone can set a profile image via https://bithomp.com/account. Simply enter your address, open your account page and click “Set avatar”. Various hardware and software wallets are supported.
- X Images
Automatically updated profile images for registered projects.
- Xaman Pro Profiles pictures and Curated assets images
Display the user’s profile images or issued token images
- Gravatar
If an email hash (which is set on the address) is linked to a Gravatar image, it will be displayed.
- Hashicons
Unique generated icons based on the address hash.
How to Use
Simply embed the following image tag in your website or app:
<img src="https://cdn.bithomp.com/avatar/rEb8TK3gBgk5auZkwc6sHnwrGVJH8DuaLh" alt="avatar" />
Custom Domain Option
For just €10/month, you can serve profile images from your own domain (e.g., pfp.mydomain.com).
Set up with a DNS record:
CNAME pfp cdn.bithomp.com
Then use the avatar links like this:
<img src="https://pfp.mydomain.com/avatar/rEb8TK3gBgk5auZkwc6sHnwrGVJH8DuaLh" alt="avatar" />
Contact our support team if you’d like to enable image hosting on your custom domain.
Free MP Token Images
You can easily display Multi Purpose token images using the Bithomp token image service. No registration is required.
Supported Image Types:
- MPT images from MPT metadata
Set by token issuers in the metadata of the token.
Bithomp Logos
Set by token issuers on Bithomp (with verified signatures).TOML Files
From issuers with a verified domain, including FirstLedger TOMLs.X (Twitter) Images
For projects registered on Bithomp that have an X handle set.Xaman Curated Assets
Official curated token images.Gravatar
If an account’s email hash is linked to a Gravatar image.Xaman Pro User Profiles
Profile images for Pro users’ issued tokens.Hashicons
Unique generated icons based on the address hash.
How to Use
Simply embed the following image tag in your website or app:
<img src="http://cdn.bithomp.com/mptoken/00000AE825B89F24B381CABA5921FF0B634DE9111D915B2A" alt="token logo" />
Custom Domain Option
For just €10/month, you can serve token images from your own domain (e.g., tokens.mydomain.com). Set up with a DNS record:
CNAME tokens cdn.bithomp.com
Then use the token image links like this:
<img src="https://tokens.mydomain.com/mptoken/00000AE825B89F24B381CABA5921FF0B634DE9111D915B2A" alt="token logo" />
Contact our support team if you’d like to enable image hosting on your custom domain.
Direct URL examples
XRPL Explorer
- https://bithomp.com/explorer/{txid}
- https://bithomp.com/explorer/{address}
- https://bithomp.com/explorer/{username}
- https://bithomp.com/explorer/{NFT-XLS14 || HEXcurrency}
- https://bithomp.com/explorer/{payString}
NFT explorer
- https://bithomp.com/nft/{nftID}
- https://bithomp.com/nft-offer/{nftOfferID}
- https://bithomp.com/nft-offers/{address || username}
- https://bithomp.com/nft-explorer?owner={address || username}&issuer={address || username}&taxon={taxon}
- https://bithomp.com/nfts/{address || username}
- https://bithomp.com/nft-volumes?currency={currencyCode}¤cyIssuer={address}&sale={"primary" || "secondary" || "all"}&period={"all" || "month" || "week" || "day"}&list={"issuers" || "currencies" || "brokers"}
- https://bithomp.com/nft-sales?list=top&period=month&sale=secondary¤cy={currencyCode}¤cyIssuer={address}&issuer={address || username}
- https://bithomp.com/nft-sales?list=last&period=month&sale=secondary¤cy={currencyCode}¤cyIssuer={address}&issuer={address || username}
AMM explorer
Username registration
- https://bithomp.com/username?username={username}
- https://bithomp.com/username?address={address}
- https://bithomp.com/username?address={address}&username={username}
Authentication
To authorize, use this code:
# With shell, you can just pass the correct header with each request
curl "api_endpoint_here"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
// With javascript, you can just pass the correct header with each request
// Include jquery in order to use $.ajax or rewrite to vanila.js
function bithompRequest(url, callback) {
$.ajax({
url: url,
type: "GET",
contentType: "application/json",
headers: {
"x-bithomp-token": "abcd-abcd-0000-abcd-0123abcdabcd"
},
success: function(result) {
callback(result);
},
error: function(error) {
console.log(error);
callback({"error": "error occurred"});
}
});
}
bithompRequest("api_endpoint_here", callback);
//replace callback with your function to process a received json
function curl_bithomp($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
array('x-bithomp-token:abcd-abcd-0000-abcd-0123abcdabcd')
);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
print curl_bithomp("api_endpoint_here")
Make sure to replace
abcd-abcd-0000-abcd-0123abcdabcdwith your API key.
Unless you are using our on-demand option, in order to use our APIs you need to request an API key via the partner portal.
Bithomp expects for the API key to be included in all API requests to the server in a header that looks like the following:
x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd
On-demand-basic
To use our on-demand BASIC option, no API key is required:
- For the XRPL Mainnet API, make requests using
https://run.api.dhali.io/48ebe903-82ec-4cea-9545-ac1e16169068/as the base URL. - For the Xahau Mainnet API, make requests using
https://run.api.dhali.io/6a1b8d84-2624-4963-8805-0224afd9f846/as the base URL.
All subsequent paths, query strings, etc, remain the same.
In addition, add a payment claim with enough value using the following button. The XRPL API only supports XRP payments. The Xahau API only supports XAH payments.
After retrieving your payment claim (a json), embed it into request headers using the header key: Payment-Claim.
After preparing your payment claim:
# Define a payment claim and submit it as part of your API request
PAYMENT_CLAIM='{"account":"my-classic-address","destination_account":"rLggTEwmTe3eJgyQbCSk4wQazow2TeKrtR","authorized_to_claim":"94875","signature":"a-signature","channel_id":"a-channel-id"}'
curl -H "Payment-Claim: $PAYMENT_CLAIM" https://run.api.dhali.io/48ebe903-82ec-4cea-9545-ac1e16169068/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E
const PAYMENT_CLAIM = JSON.stringify({
account: "my-classic-address",
destination_account: "rLggTEwmTe3eJgyQbCSk4wQazow2TeKrtR",
authorized_to_claim: "94875",
signature: "a-signature",
channel_id: "a-channel-id"
});
fetch('https://run.api.dhali.io/48ebe903-82ec-4cea-9545-ac1e16169068/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E', {
method: 'GET',
headers: {
'Payment-Claim': PAYMENT_CLAIM
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
$paymentClaim = json_encode([
"account" => "my-classic-address",
"destination_account" => "rLggTEwmTe3eJgyQbCSk4wQazow2TeKrtR",
"authorized_to_claim" => "94875",
"signature" => "a-signature",
"channel_id" => "a-channel-id"
]);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://run.api.dhali.io/48ebe903-82ec-4cea-9545-ac1e16169068/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Payment-Claim: $paymentClaim"
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);
On-demand-premium
To use our on-demand PREMIUM option, no API key is required:
- For the XRPL Mainnet API, make requests using
https://run.api.dhali.io/d995db530-7e57-46d1-ac8a-76324794e0c9/as the base URL. - For the Xahau Mainnet API, make requests using
https://run.api.dhali.io/56d61c4b-654f-4abc-8e5e-7fcb89ba13dd/as the base URL.
All subsequent paths, query strings, etc, remain the same.
In addition, add a payment claim with enough value using the following button. The XRPL API only supports XRP payments. The Xahau API only supports XAH payments.
After retrieving your payment claim (a json), embed it into request headers using the header key: Payment-Claim.
After preparing your payment claim:
# Define a payment claim and submit it as part of your API request
PAYMENT_CLAIM='{"account":"my-classic-address","destination_account":"rLggTEwmTe3eJgyQbCSk4wQazow2TeKrtR","authorized_to_claim":"94875","signature":"a-signature","channel_id":"a-channel-id"}'
curl -H "Payment-Claim: $PAYMENT_CLAIM" https://run.api.dhali.io/d995db530-7e57-46d1-ac8a-76324794e0c9/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E?sellOffers=true&buyOffers=true&uri=true&history=true&assets=true
const PAYMENT_CLAIM = JSON.stringify({
account: "my-classic-address",
destination_account: "rLggTEwmTe3eJgyQbCSk4wQazow2TeKrtR",
authorized_to_claim: "94875",
signature: "a-signature",
channel_id: "a-channel-id"
});
fetch('https://run.api.dhali.io/d995db530-7e57-46d1-ac8a-76324794e0c9/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E?sellOffers=true&buyOffers=true&uri=true&history=true&assets=true', {
method: 'GET',
headers: {
'Payment-Claim': PAYMENT_CLAIM
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
$paymentClaim = json_encode([
"account" => "my-classic-address",
"destination_account" => "rLggTEwmTe3eJgyQbCSk4wQazow2TeKrtR",
"authorized_to_claim" => "94875",
"signature" => "a-signature",
"channel_id" => "a-channel-id"
]);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://run.api.dhali.io/d995db530-7e57-46d1-ac8a-76324794e0c9/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E?sellOffers=true&buyOffers=true&uri=true&history=true&assets=true");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Payment-Claim: $paymentClaim"
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);
Username
Get username for an address
curl "https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?username=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?username=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?username=true");
print $data;
The above command returns JSON structured like this:
{
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"xAddress": "X7WZKEeNVS2p9Tire9DtNFkzWBZbFtJHWxDjN9fCrBGqVA4",
"username": "Bitstamp"
}
This endpoint retrieves a username for a requested XRPL address.
HTTP Request
GET https://bithomp.com/api/v2/address/<address>?username=true
URL Parameters
| Parameter | Description |
|---|---|
| address | The XRPL address, can be r-address or a X-address |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| username | false | If set to true, the result will also include a username (rippletrade or bithomp). |
Get address information by a username
curl "https://bithomp.com/api/v2/username/xrptipbot?service=true&parent=true&verifiedDomain=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/username/xrptipbot?service=true&parent=true&verifiedDomain=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/username/xrptipbot?service=true&parent=true&verifiedDomain=true");
print $data;
The above command returns JSON structured like this:
{
"address": "rPEPPER7kfTD9w2To4CQk6UCfuHM9c6GDY",
"xAddress": "XV5sbjUmgPpvXv4ixFWZ5ptAYZ6PD2gYsjNFQLKYW33DzBm",
"inception": 1513126312,
"username": "xrptipbot",
"service": {
"name": "XRP Tip Bot",
"domain": "xrptipbot.com",
"socialAccounts": {
"twitter": "xrptipbot"
"facebook": null,
"youtube": null,
"instagram": null,
"linkedin": null,
"reddit": null,
"medium": null,
"steemit": null,
"telegram": null
}
},
"verifiedDomain": "xrptipbot.com",
"parent": {
"address": "rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv",
"xAddress": "XV3oNHx95sqdCkTDCBCVsVeuBmvh2du1vBfJR24EqdgwHDW",
"inception": 1481884572,
"service": {
"name": "Bitstamp",
"domain": "bitstamp.net",
"socialAccounts": {
"twitter": "Bitstamp",
"facebook": "Bitstamp",
"youtube": null,
"instagram": null,
"linkedin": null,
"reddit": null,
"medium": null,
"steemit": null,
"telegram": null
}
},
}
}
This endpoint retrieves information for a requested Username.
HTTP Request
GET https://bithomp.com/api/v2/username/<username>
URL Parameters
| Parameter | Description |
|---|---|
| username | A bithomp or an old rippletrade username |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| service | false | If set to true, the result will also include Service details. |
| verifiedDomain | false | If set true, the result will include a verifiedDomain if such exists. |
| hashicon | false | If set true, the result will include hashicon which can be used in img's src="" or in css, as background's url. (The icon is the same for x-address and r-address, such hashicons used in ToastWallet and Bithomp.) |
| parent | false | If set to true, the result will include the same info for a parent account. |
AMM
AMMs
curl "https://bithomp.com/api/v2/amms?holders=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/amms?holders=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/amms?holders=true");
print $data;
The above command returns JSON structured like this:
{
"order": "createdOld",
"marker": "16E5DAA100000001",
"amms": [
{
"ammID": "51DFB0A87FF1606C4413D1E7581FF969C41D53A1B142B5A9FD91A1AE478F92F2",
"holders": 300,
"createdAt": 1711138371,
"createdLedgerIndex": 86795283,
"createdTxHash": "BDCC35ED3EEA1F6E4AC76C21395F98239BACF9D59708CF3A4560830FF734AEF7",
"updatedAt": 1711138371,
"updatedLedgerIndex": 86795283,
"updatedTxHash": "BDCC35ED3EEA1F6E4AC76C21395F98239BACF9D59708CF3A4560830FF734AEF7",
"account": "r4Xt6n57NW1qEgm3RhZrYE7uTdzkCy8eqL",
"accountDetails": {
"username": null,
"service": null
},
"ownerNode": "0",
"amount": "236219041",
"amount2": {
"currency": "XSG",
"issuer": "rXSGuKAkUGkPL6iUMJWX1Fi5bogsVYPMs",
"value": "12.70007695950302",
"issuerDetails": {
"username": "XSGCoin",
"service": "XSGCoin"
}
},
"tradingFee": null,
"auctionSlot": {
"account": "rXSGjb9nTn46LZh8PEgeRXKd239AYuZHa",
"accountDetails": {
"username": null,
"service": null
},
"discountedFee": null,
"expiration": 1711224770,
"price": {
"currency": "03880B1D8FC30AA9E81656479E7C98A18A912373",
"issuer": "r4Xt6n57NW1qEgm3RhZrYE7uTdzkCy8eqL",
"value": "0",
"issuerDetails": {
"username": null,
"service": null
}
}
},
"lpTokenBalance": {
"currency": "03880B1D8FC30AA9E81656479E7C98A18A912373",
"issuer": "r4Xt6n57NW1qEgm3RhZrYE7uTdzkCy8eqL",
"value": "54772.2557505166",
"issuerDetails": {
"username": null,
"service": null
}
},
"voteSlots": [
{
"createdAt": 1711138371,
"createdLedgerIndex": 86795283,
"createdTxHash": "BDCC35ED3EEA1F6E4AC76C21395F98239BACF9D59708CF3A4560830FF734AEF7",
"updatedAt": 1711138371,
"updatedLedgerIndex": 86795283,
"updatedTxHash": "BDCC35ED3EEA1F6E4AC76C21395F98239BACF9D59708CF3A4560830FF734AEF7",
"account": "rXSGjb9nTn46LZh8PEgeRXKd239AYuZHa",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": null,
"voteWeight": 100000
}
]
}
]
}
This endpoint returns a list of AMM pools.
HTTP Request
GET https://bithomp.com/api/v2/amms
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| currency | null | If set, only AMMs containing this currency (Asset1 or Asset2) will be returned. Format: currency=XRP or currency=524C555344000000000000000000000000000000 (for RLUSD) |
| currencyIssuer | null | currency issuer for currency in case of an IOU. Format: currencyIssuer=rhub8VRN55s94qWKDv6jmDy1pUykJzF3wq |
| order | createdOld |
in which order the AMMs should be returned (createdOld, createdNew, updatedOld, updatedNew), currencyHigh - if you need to sort it by Asset1 or Asset2 balances, then specify also the sortCurrency parameter |
| sortCurrency | null | If you want to sort by Asset1 or Asset2 balances, make sure order is set to currencyHigh and sortCurrency is set as for example XRP |
| sortCurrencyIssuer | null | currency issuer for sortCurrency in case of an IOU |
| voteSlots | true | change to false if you do not need voteSlots to reduce the response size |
| auctionSlot | true | change to false if you do not need auctionSlot to reduce the response size |
| limit | 100 | The number of AMMs to return. (More than 100 is available for the Standard plan and higher). |
| holders | false | (available on paid plans only) If set to true, the result will also include a holders count. This is the number of unique LP token holders. |
| marker | null | (available on paid plans only) The marker from the previous request, if you need a next page of AMMs |
| ids | null | (Available for the Standard plan and higher) A list of AMM IDs separated by commas (max 100), to get information about specific NFTs. Formats: ids=abc,def, ids[]=abc&ids[]=def or ids=abc&ids=def. |
AMM Pool
curl "https://bithomp.com/api/v2/amm/C55741BDA5F2590DD0F0EF7F620F133C0B73C382A8987068CA2DD886D99FD3B5?holders=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/amm/C55741BDA5F2590DD0F0EF7F620F133C0B73C382A8987068CA2DD886D99FD3B5?holders=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/amm/C55741BDA5F2590DD0F0EF7F620F133C0B73C382A8987068CA2DD886D99FD3B5?holders=true");
print $data;
The above command returns JSON structured like this:
{
"ammID": "C55741BDA5F2590DD0F0EF7F620F133C0B73C382A8987068CA2DD886D99FD3B5",
"holders": 123,
"createdAt": 1711139081,
"createdLedgerIndex": 86795469,
"createdTxHash": "A23BEB55D660AD02755CFCDAB1D34A3DAD6B84519A77C10932CC158626F4EDA3",
"updatedAt": 1713700900,
"updatedLedgerIndex": 87461194,
"updatedTxHash": "622E376CDE8DC6B80DCDF2C7C8590A0281FC01885F617EDAADE223B39BE17B00",
"account": "rUGqgPbzKFVsSkTYUk4hdRoPwTaLv1iSDS",
"accountDetails": {
"username": null,
"service": null
},
"ownerNode": "0",
"amount": "13820630640",
"amount2": {
"currency": "7853504543544152000000000000000000000000",
"issuer": "rh5jzTCdMRCVjQ7LT6zucjezC47KATkuvv",
"value": "173068.8207730273",
"issuerDetails": {
"username": null,
"service": null
}
},
"tradingFee": 290,
"auctionSlot": {
"account": "rpGhdshAMiVYPei3FtusVTPndijbpdATna",
"accountDetails": {
"username": null,
"service": null
},
"discountedFee": 29,
"expiration": 1713301051,
"price": {
"currency": "03DD35D1879DBE4FE3290B911A14875DE6534DFD",
"issuer": "rUGqgPbzKFVsSkTYUk4hdRoPwTaLv1iSDS",
"value": "5000",
"issuerDetails": {
"username": null,
"service": null
}
}
},
"lpTokenBalance": {
"currency": "03DD35D1879DBE4FE3290B911A14875DE6534DFD",
"issuer": "rUGqgPbzKFVsSkTYUk4hdRoPwTaLv1iSDS",
"value": "6591411.572091643",
"issuerDetails": {
"username": null,
"service": null
}
},
"voteSlots": [
{
"createdAt": 1712859131,
"createdLedgerIndex": 87242106,
"createdTxHash": "D4D6ED2059242EC15B8E3FEE95BD0BBD803C7446D4A45FD3D3DC2ACF2845155A",
"updatedAt": 1713675981,
"updatedLedgerIndex": 87454715,
"updatedTxHash": "6F50879E1FE149F54833110E21100888897FF53274226DEE5027DFE0F3E75BE3",
"account": "rpSw2Z5Rj7envE1reaD3K1As1pcjND4n7J",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": 300,
"voteWeight": 17649
},
{
"createdAt": 1713042481,
"createdLedgerIndex": 87289771,
"createdTxHash": "FEBCDB280FC220AFF5E113EA7C2A73955DAD79F01F603F2E60BA00A247D17CB5",
"updatedAt": 1713398941,
"updatedLedgerIndex": 87382534,
"updatedTxHash": "7EFE2737FD5B939A66AAEF15AB3D6D5EFB0EBC8F9F0601E6A2209B7610B633FC",
"account": "rsQUooXEaA6KXAZdwuNJ934MyMQmTEDnpt",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": 470,
"voteWeight": 0
},
{
"createdAt": 1712853831,
"createdLedgerIndex": 87240726,
"createdTxHash": "77E804B23F474B43EB799CBDC86399A6747FDE5087445AE27C32735540E73410",
"updatedAt": 1713675981,
"updatedLedgerIndex": 87454715,
"updatedTxHash": "6F50879E1FE149F54833110E21100888897FF53274226DEE5027DFE0F3E75BE3",
"account": "rpNmRsusXxqJoaDny4B3nVTqwkE1xDEDGt",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": 90,
"voteWeight": 913
},
{
"createdAt": 1713398941,
"createdLedgerIndex": 87382534,
"createdTxHash": "7EFE2737FD5B939A66AAEF15AB3D6D5EFB0EBC8F9F0601E6A2209B7610B633FC",
"updatedAt": 1713675981,
"updatedLedgerIndex": 87454715,
"updatedTxHash": "6F50879E1FE149F54833110E21100888897FF53274226DEE5027DFE0F3E75BE3",
"account": "rDqtfMeAZJsJYDjn1J267qwY28rdC6arUp",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": 470,
"voteWeight": 6
},
{
"createdAt": 1712875191,
"createdLedgerIndex": 87246288,
"createdTxHash": "391E10042E943BAD87BE96684C60FC69402A440184CD9975A0F64A2248280136",
"updatedAt": 1712904090,
"updatedLedgerIndex": 87253816,
"updatedTxHash": "D8596802B8026AC6A84AE5D416B41C874EF16CD815BFB693470C27EF54A0E816",
"account": "rupNhB3cLLzuc5V3kqVwkquBDKVUYftbX",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": 750,
"voteWeight": 0
},
{
"createdAt": 1713675981,
"createdLedgerIndex": 87454715,
"createdTxHash": "6F50879E1FE149F54833110E21100888897FF53274226DEE5027DFE0F3E75BE3",
"updatedAt": 1713675981,
"updatedLedgerIndex": 87454715,
"updatedTxHash": "6F50879E1FE149F54833110E21100888897FF53274226DEE5027DFE0F3E75BE3",
"account": "rwDX9EJd9p5UNCaPpYoczd4opRpqEhSW4G",
"accountDetails": {
"username": null,
"service": null
},
"tradingFee": 500,
"voteWeight": 5
}
]
}
This endpoint retrieves information for a requested AMM pool.
HTTP Request
GET https://bithomp.com/api/v2/amm/<ammID || LPtoken || address>
URL Parameters
| Parameter | Description |
|---|---|
| ammID | AMM ID |
| LPtoken | LP token currency code |
| address | AMM account address |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| ledgerIndex | null | ledger index (if set the request will return data for that ledger index) |
| ledgerTimestamp | null | ISO timestamp or unix timestamp (if set the request will return data for that timestamp) |
| holders | false | (available on paid plans only) If set to true, the result will also include a current holders count (not returned for historical request with ledgerIndexor ledgerTimestamp). This is the number of unique LP token holders. |
Get AMM Pool data by Asset Pair
curl "https://bithomp.com/api/v2/amms/search?currency=XRP¤cy2=43525950544F0000000000000000000000000000&issuer2=rRbiKwcueo6MchUpMFDce9XpDwHhRLPFo"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/amms/search?currency=XRP¤cy2=43525950544F0000000000000000000000000000&issuer2=rRbiKwcueo6MchUpMFDce9XpDwHhRLPFo", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/amms/search?currency=XRP¤cy2=43525950544F0000000000000000000000000000&issuer2=rRbiKwcueo6MchUpMFDce9XpDwHhRLPFo");
print $data;
The above command returns JSON structured like this:
{
"amms": [
{
"ammID": "2858D58ECD99108CEB105A3D9F84D293E507701878EE25612F5BF6D4A93F3B69",
"createdAt": 1713278621,
"createdLedgerIndex": 87351197,
"createdTxHash": "8477FF5FF99BBF51505FD885866640CD0D224CF233A0C038586F53F7B34E747D",
"updatedAt": 1760968330,
"updatedLedgerIndex": 99650210,
"updatedTxHash": "5920101EE96D30164D02ECFF650C89E2631816B2B9835C9381F1C6DFA28A34B7",
"account": "rLjUKpwUVmz3vCTmFkXungxwzdoyrWRsFG",
"accountDetails": {
"username": null,
"service": null
},
"ownerNode": "0",
"amount": "3020100662272",
"amount2": {
"value": "1108865.292266609",
"currency": "43525950544F0000000000000000000000000000",
"issuer": "rRbiKwcueo6MchUpMFDce9XpDwHhRLPFo",
"issuerDetails": {
"username": null,
"service": "CryptoLand"
}
},
"tradingFee": 864,
"lpTokenBalance": {
"value": "1760575206.252741",
"currency": "03CE60C3DB22CF7F7157810936F27A5B485C8DB9",
"issuer": "rLjUKpwUVmz3vCTmFkXungxwzdoyrWRsFG",
"issuerDetails": {
"username": null,
"service": null
}
},
"voteSlotsCount": 8
}
]
}
This endpoint retrieves AMM pool data by asset pair.
HTTP Request
GET https://bithomp.com/api/v2/amms/search?currency=<currency>&issuer=<issuer>¤cy2=<currency2>&issuer2=<issuer2>
URL Parameters
| Parameter | Description |
|---|---|
| currency | Asset 1 currency code (for XRP use XRP) |
| issuer | Asset 1 issuer (not required for XRP) |
| currency2 | Asset 2 currency code (for XRP use XRP) |
| issuer2 | Asset 2 issuer (not required for XRP) |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| ledgerIndex | null | ledger index (if set the request will return data for that ledger index) |
| ledgerTimestamp | null | ISO timestamp or unix timestamp (if set the request will return data for that timestamp) |
| holders | false | (available on paid plans only) If set to true, the result will also include a current holders count (not returned for historical request with ledgerIndexor ledgerTimestamp). This is the number of unique LP token holders. |
NFT (XLS-20)
NFT
curl "https://bithomp.com/api/v2/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E?sellOffers=true&buyOffers=true&uri=true&history=true&assets=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E?sellOffers=true&buyOffers=true&uri=true&history=true&assets=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft/000861A8BB208DE9CB0384F2D46901203CA958EEA4C0AF286862C7F90000005E?sellOffers=true&buyOffers=true&uri=true&history=true&assets=true");
print $data;
The above command returns JSON structured like this:
{
"flags": {
"burnable": false,
"onlyXRP": false,
"trustLine": false,
"transferable": true
},
"issuer": "rwzGnXc31zAeSQiKgGqFiJJcALhy8TUqb8",
"issuerDetails": {
"username": "3DAPES",
"service": "3DAPES"
},
"nftokenID": "000813886D8D6DAC402E0D27297E9485F4D7E1125D656678258B866100000018",
"nftokenTaxon": 10194,
"transferFee": 5000,
"sequence": 24,
"owner": "rpL8hpPgdep5MrWCFfWx2qupiAhtPrMcJu",
"ownerDetails": {
"username": null,
"service": null
},
"uri": "68747470733A2F2F626166796265696734676876366263666B6E746B793234616564667A6B757276366C746A6476736763623575736E77336A736965736D68706769652E697066732E7733732E6C696E6B2F6D657461646174612E6A736F6E",
"issuedAt": 1666885020,
"ownerChangedAt": 1666885052,
"deletedAt": null,
"assets": {
"image": "https://cdn.bithomp.com/image/image_hash.png",
"preview": "https://cdn.bithomp.com/preview/preview_hash.png",
"thumbnail": "https://cdn.bithomp.com/thumbnail/thumbail_hash.png",
"video": "https://cdn.bithomp.com/video/video_hash"
},
"history": [
{
"owner": "rXMART8usFd5kABXCayoP6ZfB35b4v43t",
"changedAt": 1666885020,
"ledgerIndex": 6860081,
"txHash": "453C088321BA9AFCB59B1B7B79790E5ECF53EF969B95845C494604E26C51E848",
"marketplace": "onxrp.com"
},
{
"owner": "rpL8hpPgdep5MrWCFfWx2qupiAhtPrMcJu",
"changedAt": 1666885052,
"ledgerIndex": 6860093,
"txHash": "103F0D35348C58D9E5301EED79906ED3CDBBD44EFFF65857BE8BFFD572F617A8",
"marketplace": "xrpcafe.com"
}
],
"sellOffers": [
{
"amount": "850000000",
"index": "B54B49719DC80B40D66E229FC02CC5DABF7D4496B395F87C369FA6235AA6B37E",
"owner": "rGJn1uZxDX4ksxRPYuj2smP7ZshdwjeSTG",
"destination": "rM3UEiJzg7nMorRhdED5savWDt1Gqb6TLw",
"expiration": 1582437632,
"createdAt": 1582437132
},
{
"amount": {
"currency": "534F4C4F00000000000000000000000000000000",
"issuer": "rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz",
"value": "10000"
},
"offerIndex": "E992835C148C9EAA7A93EABDD397A84333F27F99DA386255378A3C16A8B0DEF3",
"owner": "r9spUPhPBfB6kQeF6vPhwmtFwRhBh2JUCG",
"expiration": null,
"destination": null,
"createdAt": 1670721431,
"createdLedgerIndex": 76344438,
"createdTxHash": "616CAAAC1C737C964C4A3B27DEAFE2F172D5A82FDD9342A1F5C677ACABC5AE7B"
}
],
"buyOffers": [
{
"amount": "935000000",
"offerIndex": "3D47DA5CE9E4D9DB7D8D1FE78E9E1ECA19D8DE21A29C78FD95A856ADF2472674",
"owner": "rN5wU5VpqfxZ5q9duP3EhP8rw8y9xR1TNL",
"destination": "rM3UEiJzg7nMorRhdED5savWDt1Gqb6TLw",
"expiration": 1582437632,
"createdAt": 1582437132,
"createdLedgerIndex": 76332437,
"createdTxHash": "616CAAAC1C737C964C4A3B27DEAFE2F172D5A82FDD9342A1F5C677ACABC5AE7B"
}
]
}
This endpoint retrieves information for a requested NFT.
HTTP Request
GET https://bithomp.com/api/v2/nft/<nftID>
URL Parameters
| Parameter | Description |
|---|---|
| nftID | An NFT ID |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| uri | false | If set to true, the result will include uri and url. |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
| sellOffers | false | If set true, the result will include sellOffers. |
| buyOffers | false | If set to true, the result will include buyOffers. |
| history | false | If set to true, the result will include history. |
| metadata | false | If set to true, the result will include metadata. |
| offersValidate | false | (Only available on paid API plans) If set to true, each offer will include valid as true or false, if false then it also include validationErrors array. |
| offersHistory | false | (Only available on paid API plans) If set to true, each result will include historical offers which are already accepted or canceled. |
| convertCurrencies | null | (Only available on paid API plans) the list of currencies to convert amount to, splitted by comma, for example xrp,usd (40 fiat currencies available), the for history response will have an array amountInConvertCurrencies |
| collectionDetails | false | (Only available on paid API plans) If set to true, each nft will include collectionDetails with the collection details. if parameter assets is set as true, you will also get assets in the collectionDetails. |
NFT Offer
curl "https://bithomp.com/api/v2/nft-offer/3E8E975E0CFDF2EDE76E0925EB4393A1899061047DE1F46F0DEEA783F5F1A673"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-offer/3E8E975E0CFDF2EDE76E0925EB4393A1899061047DE1F46F0DEEA783F5F1A673", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-offer/3E8E975E0CFDF2EDE76E0925EB4393A1899061047DE1F46F0DEEA783F5F1A673");
print $data;
The above command returns JSON structured like this:
{
"nftokenID": "00081B581189F5687DBB7516339D6CCB5593D96622AD82DFE9E08966000018B7",
"offerIndex": "3E8E975E0CFDF2EDE76E0925EB4393A1899061047DE1F46F0DEEA783F5F1A673",
"createdAt": 1671813891,
"createdLedgerIndex": 76627086,
"createdTxHash": "C78692F7CE2B6D207E12BAF28BBE7BAD4D5553FEFCAC81A49FA0D7F2B6295AFD",
"account": "rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX",
"owner": "rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX",
"destination": "rpZqTPC8GvrSvEfFsUuHkmPCg29GdQuXhC",
"expiration": 1672009200,
"amount": "1800000000",
"flags": {
"sellToken": false
},
"canceledAt": 1672062241,
"canceledLedgerIndex": 76690834,
"canceledTxHash": "BE00F6A40D399D66E15C5698A9F583A47FA79D47DB9E7D5B158679C97E95C202",
"nftoken": {
"flags": {
"burnable": false,
"onlyXRP": false,
"trustLine": false,
"transferable": true
},
"issuer": "rpbjkoncKiv1LkPWShzZksqYPzKXmUhTW7",
"nftokenID": "00081B581189F5687DBB7516339D6CCB5593D96622AD82DFE9E08966000018B7",
"nftokenTaxon": 52,
"transferFee": 7000,
"sequence": 6327,
"owner": "rhrvq8Bfn1NwQQDDProJY4F822DNbcQGj2",
"ownerDetails": {
"username": "XPUNKS",
"service": "XPUNKS"
},
"uri": null,
"issuedAt": 1671616340,
"ownerChangedAt": 1672061721,
"deletedAt": null,
"url": "https://marketplace-api.onxrp.com/api/metadata/00081B581189F5687DBB7516339D6CCB5593D96622AD82DFE9E08966000018B7",
"metadata": {
"dna": "81165c5b185d49e57302b8bf936ba66ded1a195476f35fc74d2d8c8d638d0c1f",
"name": "XPUNKS #5658",
"description": "The XPUNK collection consists of 10,000 uniquely generated characters on a 24-by 24-pixel canvas. They are distinguished by their colourful traits and trademark X-mouth that represents their love for the XRPL.",
"image": "ipfs://QmUdz7aunEkMKWjTKT71QiJeKRX3MQSDC1chDUcyhwuYQ1",
"imageHash": "1591d36c09c3340569582379574b8e899b550daa0d7bfecfe648fba469aaa2ee",
"edition": 2687,
"date": 1667163549733,
"attributes": [
{
"trait_type": "Face",
"value": "Male 3"
},
{
"trait_type": "Eye Characteristics",
"value": "Fresh"
},
{
"trait_type": "Eyes",
"value": "Black Right"
},
{
"trait_type": "Neck Wearable",
"value": "No Attribute"
},
{
"trait_type": "Hair & Hats",
"value": "Bandana"
},
{
"trait_type": "Facial Hair",
"value": "Thick Beard Blonde"
},
{
"trait_type": "Eye Wearables",
"value": "Sunglasses in Hair Black"
},
{
"trait_type": "Mouth Attribute",
"value": "Pipe Old School"
},
{
"trait_type": "Piercings",
"value": "No Attribute"
}
],
"schema": "ipfs://QmNpi8rcXEkohca8iXu7zysKKSJYqCvBJn3xJwga8jXqWU",
"nftType": "art.v0",
"collection": {
"name": "XPUNKS",
"description": "The XPUNK collection consists of 10,000 uniquely generated characters on a 24-by-24-pixel canvas. They are distinguished by their colorful traits and trademark X-mouth that represents their love for the XRPL."
}
},
"issuerDetails": {
"username": "XPUNKS",
"service": "XPUNKS"
},
"ownerDetails": {
"username": null,
"service": null
}
},
"accountDetails": {
"username": null,
"service": null
},
"ownerDetails": {
"username": null,
"service": null
},
"destinationDetails": {
"username": null,
"service": null
},
"issuerDetails": {
"username": "XPUNKS",
"service": "XPUNKS"
}
}
This endpoint retrieves NFT Sales Volumes for specified parameters
HTTP Request
GET https://bithomp.com/api/v2/nft-offer/<nftOfferID>
URL Parameters
| Parameter | Description |
|---|---|
| nftOfferID | An NFT Offer ID |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
Validate NFT Offer
curl -H "Content-Type: application/json"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
--request POST
--data '{"Account": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME", "Owner": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME", "NFTokenID": "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011", "Amount": "1000000", "Flags": 0, "Destination": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME" }'
https://bithomp.com/api/v2/nftoken-offer/validateOffer
$.ajax({
url: "https://bithomp.com/api/v2/nftoken-offer/validateOffer",
type: "POST",
contentType: "application/json",
headers: {
"x-bithomp-token": "abcd-abcd-0000-abcd-0123abcdabcd"
},
data: {
"Account": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"Owner": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"NFTokenID": "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011",
"Amount": "1000000",
"Flags": 0,
"Destination": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME"
},
success: function(result) {
console.log(JSON.stringify(result, undefined, 2));
},
error: function(error) {
console.log(error);
}
});
$data = array(
"Account" => "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"Owner" => "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"NFTokenID" => "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011",
"Amount" => "1000000",
"Flags" => 0,
"Destination" => "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME"
);
$data = json_encode($data);
$ch = curl_init("https://bithomp.com/api/v2/nftoken-offer/validateOffer");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd'
));
$response = curl_exec($ch);
curl_close($ch);
print $response;
The above command returns JSON structured like this:
{
... same as NFT Offer response ...,
valid: false,
validationErrors: ["Insufficient funds on the buyer account"]
}
This endpoint validates an NFT Offer, it checks if the offer is valid and returns valid as true or false, if false then it also includes validationErrors array. Available only on paid API plans.
HTTP Request
POST https://bithomp.com/api/v2/nftoken-offer/validateOffer
Headers
| Parameter | Description |
|---|---|
| x-bithomp-token | Your API token |
Body Parameters
| Parameter | Description |
|---|---|
| Account | The account address of the offer creator |
| Owner | The owner of the NFT |
| NFTokenID | The NFT ID |
| Amount | The amount of the offer |
| Flags | The flags for the offer, can be 0 or 1 (0 - buy, 1 - sell) |
| Destination | The destination address for the offer |
| Expiration | Ripple epoch time |
| expiration | (lower case, instead of Expiration) in unixtime seconds |
NFTS
curl "https://bithomp.com/api/v2/nfts?owner=rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME&assets=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nfts?owner=rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME&assets=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nfts?owner=rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME&assets=true");
print $data;
The above command returns JSON structured like this:
{
"owner": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"ownerDetails": {
"username": "Zerpmon",
"service": "Zerpmon"
},
"nfts": [
{
"flags": {
"burnable": false,
"onlyXRP": false,
"trustLine": false,
"transferable": true
},
"issuer": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"nftokenID": "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011",
"nftokenTaxon": 0,
"transferFee": 5000,
"uri": "697066733A2F2F516D627169774D736D6B4C6971794473465A664D534D566465464A674D4139514A626D735131636F4D32564343452F382E6A736F6E",
"url": "https://cloudflare-ipfs.com/ipfs/QmbqiwMsmkLiqyDsFZfMSMVdeFJgMA9QJbmsQ1coM2VCCE/8.json",
"sequence": 17,
"issuerDetails": {
"username": "Zerpmon",
"service": "Zerpmon"
},
"assets": {
"image": "https://cdn.bithomp.com/image/image_hash.png",
"preview": "https://cdn.bithomp.com/preview/preview_hash.png",
"thumbnail": "https://cdn.bithomp.com/thumbnail/thumbail_hash.png",
"video": "https://cdn.bithomp.com/video/video_hash"
},
"metadata": {
"name": "Purrf",
"description": "Zerpmon is an original collection of digital collectible creatures that live on the XRPL, with each one being a unique 1 of 1 art piece. The Zerpmon project is fueled by a passion for high-quality art and in-depth story telling. For more information on the vision of Zerpmon, visit www.zerpmon.world",
"image": "ipfs://Qmf52STemfXu79ovVAdjRneb7kKdtYJNvzYjoxWubbu4Vx/8.png",
"attributes": [
{
"trait_type": "Zerpdex Number",
"value": "Zerpmon Collab #8"
},
{
"trait_type": "Type",
"value": "Fairy"
},
{
"trait_type": "Evolution Stage",
"value": "Collab"
}
]
}
}
]
}
This endpoint retrieves a List of NFTs for specified parameters
HTTP Request
GET https://bithomp.com/api/v2/nfts
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| owner | null | The address of the Owner |
| collection | null | The collection ID (optional), can be used for Sologenic collections (specify an issuer), and for standard collections instead of using issuer and taxon, in the format: issuer:taxon, if specified you will get also collectionDetails in the root with the collection details. |
| issuer | null | The address of the Issuer |
| taxon | null | Taxon for that Issuer (optional, will be ignored without an Issuer) |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
| hasMetadata | false | set to true, to list NFTs only with available metadata |
| hasImage | false | set to true, to list NFTs only with available images |
| hasMedia | false | set to true, to list NFTs only with available media data: audio, video, image |
| includeDeleted | false | set to true, if you want result to include deleeted NFTs |
| mintedByMarketplace | null | Here you can specify a minter from https://bithomp.com/nft-minters?period=all to filter your search by minter project. |
| marker | null | The marker from the previous request, if you need a next page of NFTs |
| list | nfts |
(Only available on paid API plans) can be set to onSale to get the list of NFTs with active sell offers |
| destination | all |
(Only available on paid API plans) used to filter NFTs for sale list=onSale, can be set as an address (to specify a particular MarketPlace), public, knownBrokers, publicAndKnownBrokers, all |
| order | null | (Only available on paid API plans) used to order NFTs: 1. for list=nfts, can be mintedNew and mintedOld, 2. for list=onSale, can be offerCreatedNew, offerCreatedOld, priceLow, priceHigh |
| currency | null | (Only available on paid API plans) used to filter NFTs for sale list=onSale, can be XRP or any other currency code. |
| currencyIssuer | null | (Only available on paid API plans) A currency issuer for the currency if it is not an XRP. |
| issuedAt | null | (Only available on paid API plans) It can be used to show NFTs which were minted during some period of time. A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year, or 1671490800000..1671663600000 - period or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z, to show from specific date till now: 1671490800000.. or 2022-12-20T00:00:00.000Z.. |
| deletedAt | null | (Only available on paid API plans) It can be used to show NFTs which were burned during some period of time. A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year. or 1671490800000..1671663600000 - period or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z, to show from specific date till now: 1671490800000.. or 2022-12-20T00:00:00.000Z.. |
| sellOffers | false | (Available for the Premium plan and higher) If set true, the NFTs will include sellOffers. |
| buyOffers | false | (Available for the Premium plan and higher) If set to true, the NFTs will include buyOffers. |
| history | false | (Available for the Premium plan and higher) If set to true, the NFTs will include history. |
| offersValidate | false | (Available for the Premium plan and higher) If set to true, each NFT offer will include valid as true or false, if false then it also include validationErrors array. |
| offersHistory | false | (Available for the Premium plan and higher) If set to true, each NFT will include historical offers which are already accepted or canceled. |
| limit | 100 | The number of NFTs to return. (More than 100 is available for the Standard plan and higher). |
| ids | null | (Available for the Standard plan and higher) A list of NFT IDs separated by commas (max 100), to get information about specific NFTs. Formats: ids=abc,def, ids[]=abc&ids[]=def or ids=abc&ids=def. |
| collectionDetails | false | (Available for the Paid plans) If set to true, each nft will include collectionDetails with the collection details. if parameter assets is set as true, you will also get assets in the collectionDetails. |
NFT Offers
curl "https://bithomp.com/api/v2/nft-offers/rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX?list=counterOffers&offersValidate=true&nftoken=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-offers/rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX?list=counterOffers&offersValidate=true&nftoken=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-offers/rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX?list=counterOffers&offersValidate=true&nftoken=true");
print $data;
The above command returns JSON structured like this:
{
"owner": "rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX",
"list": "offers",
"ownerDetails": {
"username": null,
"service": null
},
"nftOffers": [
{
"nftokenID": "00081B581189F5687DBB7516339D6CCB5593D96622AD82DF41D3BA2E0000017F",
"offerIndex": "84148E4C12F401F72767033BC13170AFC92B222B3D1365D1D59ED5A4193DD2C1",
"createdAt": 1667359001,
"createdLedgerIndex": 75471736,
"createdTxHash": "899B95BD4D0F8D4DE80DAB145919D3FF55788CB9C25E25DB7B3755F7B6AA7293",
"account": "rDbkpaT4jk5F17CqL11muJzzwhZtCStyg5",
"owner": "rDbkpaT4jk5F17CqL11muJzzwhZtCStyg5",
"destination": null,
"expiration": null,
"amount": "1500000000",
"flags": {
"sellToken": false
},
"nftoken": {
"flags": {
"burnable": false,
"onlyXRP": false,
"trustLine": false,
"transferable": true
},
"issuer": "rpbjkoncKiv1LkPWShzZksqYPzKXmUhTW7",
"nftokenID": "00081B581189F5687DBB7516339D6CCB5593D96622AD82DF41D3BA2E0000017F",
"nftokenTaxon": 52,
"transferFee": 7000,
"sequence": 383,
"owner": "rDpLcKCi18ixgzJEseKbi2krRGTWZM69gX",
"uri": null,
"issuedAt": 1667268851,
"ownerChangedAt": 1667403840,
"deletedAt": null,
"url": "https://marketplace-api.onxrp.com/api/metadata/00081B581189F5687DBB7516339D6CCB5593D96622AD82DF41D3BA2E0000017F",
"metadata": {
"dna": "e48265739a191624244a717e9b233a11553d703af0e82739784f78f9d332a789",
"name": "XPUNKS #383",
"description": "The XPUNK collection consists of 10,000 uniquely generated characters on a 24-by 24-pixel canvas. They are distinguished by their colourful traits and trademark X-mouth that represents their love for the XRPL.",
"image": "ipfs://QmdPgX2nHd91TYQ3uY8kyqNCciXxfqp3ATVrwWfiAfZiJo",
"imageHash": "71db5411810b661b150ee05b7e19f12a3e0022b2a256f7a255679a5dce7ad487",
"edition": 1482,
"date": 1667163506360,
"attributes": [
{
"trait_type": "Face",
"value": "Male 4"
},
{
"trait_type": "Eye Characteristics",
"value": "Tired"
},
{
"trait_type": "Eyes",
"value": "Dark Brown Right"
},
{
"trait_type": "Neck Wearable",
"value": "Chain Gold"
},
{
"trait_type": "Hair & Hats",
"value": "Afro Hair Orange"
},
{
"trait_type": "Facial Hair",
"value": "No Attribute"
},
{
"trait_type": "Eye Wearables",
"value": "Clubmasters Vision Glasses"
},
{
"trait_type": "Mouth Attribute",
"value": "No Attribute"
},
{
"trait_type": "Piercings",
"value": "No Attribute"
}
],
"schema": "ipfs://QmNpi8rcXEkohca8iXu7zysKKSJYqCvBJn3xJwga8jXqWU",
"nftType": "art.v0",
"collection": {
"name": "XPUNKS",
"description": "The XPUNK collection consists of 10,000 uniquely generated characters on a 24-by-24-pixel canvas. They are distinguished by their colorful traits and trademark X-mouth that represents their love for the XRPL."
}
},
"issuerDetails": {
"username": "XPUNKS",
"service": "XPUNKS"
},
"ownerDetails": {
"username": null,
"service": null
}
},
"accountDetails": {
"username": null,
"service": null
},
"ownerDetails": {
"username": null,
"service": null
},
"valid": false,
"validationErrors": [
"Insufficient funds on the buyer account"
]
}
]
}
This endpoint retrieves NFT Offers created by an address or NFT Offers for all NFTs owned by that address.
HTTP Request
GET https://bithomp.com/api/v2/nft-offers/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | The XRPL address or a username. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| list | null | default - to list all owned NFT offers, counterOffers - to list NFT Offers for all NFTs owned by the address, privatelyOfferedToAddress - to list all NFT offers where the address is specified as destination (brokers, private offers, nft transfers). |
| nftoken | false | If set to true, each offer will include nftoken data, including metadata. |
| offersValidate | false | (Only available on paid API plans) If set to true, each offer will include valid as true or false, if false then it also include validationErrors array. |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
NFT Collection
curl "https://bithomp.com/api/v2/nft-collection/ra59pDJcuqKJcQws7Xpuu1S8UYKmKnpUkW:1?floorPrice=true&statistics=true&assets=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-collection/ra59pDJcuqKJcQws7Xpuu1S8UYKmKnpUkW:1?floorPrice=true&statistics=true&assets=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-collection/ra59pDJcuqKJcQws7Xpuu1S8UYKmKnpUkW:1?floorPrice=true&statistics=true&assets=true");
print $data;
The above command returns JSON structured like this:
{
"type": "xls20",
"floorPrice": true,
"assets": true,
"statistics": true,
"collection": {
"collection": "ra59pDJcuqKJcQws7Xpuu1S8UYKmKnpUkW:1",
"name": "xSPECTAR",
"family": "8888",
"description": null,
"image": "QmWyX21PY7DDLpEPNqAyEcLKASEJznVKiB9VrUCwvEmZBc",
"createdAt": 1670361970,
"updatedAt": 1671008552,
"issuer": "ra59pDJcuqKJcQws7Xpuu1S8UYKmKnpUkW",
"issuerDetails": {
"address": "ra59pDJcuqKJcQws7Xpuu1S8UYKmKnpUkW",
"username": "xSPECTAR",
"service": "xSPECTAR"
},
"taxon": 1,
"floorPrices": [
{
"open": {
"amount": "139000000"
},
"private": {
"amount": "49250000",
"destination": "rpZqTPC8GvrSvEfFsUuHkmPCg29GdQuXhC",
"destinationDetails": {
"username": null,
"service": "bidds"
}
}
},
{
"open": {
"amount": {
"currency": "7853504543544152000000000000000000000000",
"issuer": "rh5jzTCdMRCVjQ7LT6zucjezC47KATkuvv",
"value": "10000"
}
},
"private": null
}
],
"assets": {
"image": "https://cdn.bithomp.com/image/hash",
"preview": "https://cdn.bithomp.com/preview/hash",
"thumbnail": "https://cdn.bithomp.com/thumbnail/hash"
},
"statistics": {
"owners": 1622,
"nfts": 8887,
"all": {
"buyers": 900,
"tradedNfts": 3167
},
"day": {
"buyers": 7,
"tradedNfts": 7
},
"week": {
"buyers": 19,
"tradedNfts": 52
},
"month": {
"buyers": 74,
"tradedNfts": 272
},
"year": {
"buyers": 316,
"tradedNfts": 1086
}
}
}
}
This endpoint retrieves NFT Collection details, including floor price, sale statistics, owner count etc.
HTTP Request
GET https://bithomp.com/api/v2/nft-collection/<collectionId>
URL Parameters
| Parameter | Description |
|---|---|
| collectionId | The collectionId in the format issuer:taxon for Standard collections or issuer for Sologenic collections. (you can find collection ids in the NFT Collections endpoint) |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| statistics | false | (Only available on paid API plans) If set to true, returns statistics with owner count and NFT count for the present time, it also includes count of buyers and traded NFTs for the last 24 hours, 7 days, 30 days, or 365 days. |
| floorPrice | false | (Only available on paid API plans) If set to true, returns floorPrices with the lowest price for the NFT collection. |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for NFT collection image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
NFT Collections
curl "https://bithomp.com/api/v2/nft-collections?search=zerpmon&assets=true&floorPrice=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-collections?search=zerpmon&assets=true&floorPrice=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-collections?search=zerpmon&assets=true&floorPrice=true");
print $data;
The above command returns JSON structured like this:
{
"type": "xls20",
"order": "createdNew",
"search": "zerpmon",
"collections": [
{
"collection": "rBNmfMkbqnWzht5tv7ndYm23FEE1LrbfUb:223",
"name": "Ripple Effect - Side A (Tsunami Pack)",
"family": null,
"description": "Official Ripple Effect Album NFT with additional files and whitelist snapshot done on 2/23/2024 for all eligible XRPL NFT holders to receive a free NFT or more than one! As of 2/23/2024 if you own NFTs from the following XRPL projects you are eligible to mint this NFT for free! Astute Scholars, XTAPES, 2023 = 322 NFT (Album), PixelXSkulls, Proof Of Stake NFT (Song), Tree Faces, Zerpmon, XBOT, Shemitah NFT (Song), Donnie, Rich Ducks Club, Enigmatic Ducks, XSpectar, Schmeckles, Astrals, Wahine Punk, XAliens, Power Zerps, JNKZ, Retro Punks, XZombie, Regulator Punk, Monkee Monkee and Chilled Chimps. WHOA WHOA!",
"image": "bafybeiaeywa575ijibphzcxgpyaamjlbflquht63zku2knhvkfavmagrvu/ripple effect side a nft2 animation.gif",
"issuer": "rBNmfMkbqnWzht5tv7ndYm23FEE1LrbfUb",
"issuerDetails": {
"address": "rBNmfMkbqnWzht5tv7ndYm23FEE1LrbfUb",
"username": null,
"service": null
},
"taxon": 223,
"floorPrices": [],
"assets": {
"image": "https://cdn.bithomp.com/image/hash/animation.gif",
"preview": "https://cdn.bithomp.com/preview/hash/animation.gif",
"thumbnail": "https://cdn.bithomp.com/thumbnail/hash/animation.gif"
}
},
{
"collection": "rH1phNM38p2Eva5fZV1rvdGdycKLdKiLtJ",
"name": "Lil Ninja X Zerpmon",
"family": null,
"description": "The collection called “Lil Ninja X Zerpmon” reserved for collaboration auction with the legendary Zerpmon! This collection features Lil Ninja X with Zerpmon inspired attire and background scenery! Lil Ninja X NFT's are awarded 1 point per Gold Piece in the monthly Rewards System which gives 25% of Sales Profits back to Holders, every single month as Rewards in XRP! This also contributes to your ranking on the LIL NINJA X Elder Scrolls of the Greatest Ripple Ninja Warriors.",
"image": "bafybeigbkt6dalehmyojobqt7lpt5y42abzjqav6qvdyotasuc7btanr3a/image.jpeg",
"floorPrices": [],
"assets": {
"image": "https://cdn.bithomp.com/image/hash/image.jpeg",
"preview": "https://cdn.bithomp.com/preview/hash/image.jpeg",
"thumbnail": "https://cdn.bithomp.com/thumbnail/hash/image.jpeg"
}
},
{
"collection": "rBNmfMkbqnWzht5tv7ndYm23FEE1LrbfUb:0",
"name": "Zerpmon",
"family": null,
"description": "Official Zerpmon Song LemFT",
"image": "bafybeigk5btpufwykocb2tosmbk3stfjijlmec6puk5ys5pvkfhdx4eita/thumbnail_Image-1 1600.png",
"issuer": "rBNmfMkbqnWzht5tv7ndYm23FEE1LrbfUb",
"issuerDetails": {
"address": "rBNmfMkbqnWzht5tv7ndYm23FEE1LrbfUb",
"username": null,
"service": null
},
"taxon": 0,
"floorPrices": [
{
"open": null,
"private": {
"amount": "589000000",
"destination": "rpx9JThQ2y37FaGeeJP7PXDUVEXY3PHZSC",
"destinationDetails": {
"username": "xrpcafe",
"service": "xrp.cafe"
}
}
}
],
"assets": {
"image": "https://cdn.bithomp.com/image/hash/thumbnail_Image-1%201600.png",
"preview": "https://cdn.bithomp.com/preview/hash/thumbnail_Image-1%201600.png",
"thumbnail": "https://cdn.bithomp.com/thumbnail/hash/thumbnail_Image-1%201600.png"
}
}
]
}
This endpoint retrieves NFT Collection list for your search creterias.
HTTP Request
GET https://bithomp.com/api/v2/nft-collections
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| order | createdNew |
(optional) createdNew, createdOld, updatedNew, updatedOld (order list by the date when the first or last NFT was issued). |
| search | null | (optional) search by NFT Collection Name and Description. |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for NFT collection image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
| floorPrice | false | (Only available on paid API plans) If set to true, returns floorPrices with the lowest price for the NFT collection. |
| issuer | null | (optional) The address of the NFT Collection issuer (also works for Sologenic issuers). |
| marker | null | The marker from the previous request, if you need a next page of NFT collections |
| limit | 100 | The number of NFTs to return. (More than 100 is available for the Standard plan and higher). |
NFT Distribution
curl "https://bithomp.com/api/v2/nft-owners?order=nonSelfIssued&issuer=rMCfTcW9k2Z21cm4zWj2mgHaTrxxrHtL7n&taxon=0"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-owners?order=nonSelfIssued&issuer=rMCfTcW9k2Z21cm4zWj2mgHaTrxxrHtL7n&taxon=0", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-owners?order=nonSelfIssued&issuer=rMCfTcW9k2Z21cm4zWj2mgHaTrxxrHtL7n&taxon=0");
print $data;
The above command returns JSON structured like this:
{
"issuer": "rMCfTcW9k2Z21cm4zWj2mgHaTrxxrHtL7n",
"issuerDetails": {
"username": null,
"service": null
},
"taxon": 0,
"order": "nonSelfIssued",
"summary": {
"totalNfts": 6,
"totalOwners": 5
},
"owners": [
{
"address": "rfakxbdmroQpQzZBL9caDP9RYxmSKuNZj5",
"addressDetails": {
"username": null,
"service": null
},
"total": 2,
"selfIssued": 0,
"nonSelfIssued": 2
},
{
"address": "r4iCcnDXzCZCDkrbWyebk5aNwg55R8PyB9",
"addressDetails": {
"username": null,
"service": null
},
"total": 1,
"selfIssued": 0,
"nonSelfIssued": 1
}
]
}
This endpoint retrieves NFT Owners list sorted by NFT count.
HTTP Request
GET https://bithomp.com/api/v2/nft-owners
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| order | total |
nonSelfIssued, selfIssued, total (order list by count of total owned NFTS, or only by self-issued NFTs, or only owned NFTs that issued by another address). |
| issuer | null | (optional) NFT issuer address, to see the NFT distribution for a specific issuer. |
| taxon | null | (optional) taxon for the address issuer, to see the NFT distribution of a collection identified by issuer and taxon. |
| marker | null | (available on paid plans only) The marker from the previous request, if you need a next page of NFT owners. |
NFT Sales
curl "https://bithomp.com/api/v2/nft-sales?list=topSold¤cy=xrp&convertCurrencies=usd,eur"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-sales?list=topSold¤cy=xrp&convertCurrencies=usd,eur", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-sales?list=topSold¤cy=xrp&convertCurrencies=usd,eur");
print $data;
The above command returns JSON structured like this:
{
"list": "topSold",
"saleType": "all",
"period": "all",
"currency": "xrp",
"convertCurrencies": ["eur", "usd"],
"total": {
"primary": 41933,
"secondary": 25587
},
"sales": [
{
"nftokenID": "00081388A47691FB124F91B5FF0F5246AED2B5275385689F27ED727F000015E3",
"acceptedAt": "1673931131",
"acceptedLedgerIndex": "77169958",
"acceptedTxHash": "C6F7492A4E58BC2FB6190F7081BBC96231E10ED463EDAB301DBDD650C97DD5FB",
"acceptedAccount": "rpx9JThQ2y37FaGeeJP7PXDUVEXY3PHZSC",
"seller": "rnVp1xV43N7SgqtjHWCSM6EcSUYs7yWNku",
"buyer": "rJ1GJjNauEafyQWo1o5ZYDuciGPjx6yTGD",
"amount": "40000000000",
"broker": true,
"marketplace": "xrp.cafe",
"saleType": "secondary",
"amountInConvertCurrencies": {
"eur": "14213.6",
"usd": "15399.6"
},
"nftoken": {
"flags": {
"burnable": false,
"onlyXRP": false,
"trustLine": false,
"transferable": true
},
"issuer": "rEzbi191M5AjrucxXKZWbR5QeyfpbedBcV",
"nftokenID": "00081388A47691FB124F91B5FF0F5246AED2B5275385689F27ED727F000015E3",
"nftokenTaxon": 1,
"transferFee": 5000,
"sequence": 5603,
"owner": "rJ1GJjNauEafyQWo1o5ZYDuciGPjx6yTGD",
"uri": "516D654834744E4D4C655233756F3774755453357768416E66734B4A737A4D4C6B676F7A44664C78676863385571",
"nftSerial": 5603,
"issuedAt": 1667651282,
"ownerChangedAt": 1673931131,
"deletedAt": null,
"url": "https://cloudflare-ipfs.com/ipfs/QmeH4tNMLeR3uo7tuTS5whAnfsKJszMLkgozDfLxghc8Uq",
"metadata": {
"name": "Bored Apes XRP Club #5611",
"description": "The Bored Apes XRP Club is a collection of 10,000 unique Bored Ape NFTs living on the XRP ledger.",
"image": "QmdYwvVtjNFKRqHEWPChdkfM24Z1i34FmmC4uAjDdnJ7NF/5611.png",
"edition": "5611",
"date": 1667650922062,
"creator": "Bored Apes XRP Club",
"artist": "Bored Apes XRP Club",
"attributes": [
{
"trait_type": "Background",
"value": "Punk Blue"
},
{
"trait_type": "Fur",
"value": "Grey"
},
{
"trait_type": "Clothes",
"value": "Cowboy"
},
{
"trait_type": "Mouth",
"value": "Rainbow"
},
{
"trait_type": "Eyes",
"value": "Blindfold"
}
],
"external_link": "https://x-apes.com/",
"category": "Collectables",
"collection": {
"name": "Bored Apes XRP Club",
"family": "art"
}
},
"issuerDetails": {
"username": "BoredApesXRP",
"service": "Bored Apes XRP Club"
},
"ownerDetails": {
"username": null,
"service": null
}
},
"sellerDetails": {
"username": null,
"service": null
},
"buyerDetails": {
"username": null,
"service": null
},
"acceptedAccountDetails": {
"username": null,
"service": "xrp.cafe"
}
}
],
"total": {
"primary": 78600,
"secondary": 54396
}
}
This endpoint retrieves a List of NFT Sales for specified parameters
HTTP Request
GET https://bithomp.com/api/v2/nft-sales
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| list | null | topSold or lastSold (for the list of NFTs sales of the highest price or the latest sell timestamp) |
| convertCurrencies | null | (Only available on paid API plans) the list of currencies to convert amount to, splitted by comma, for example xrp,usd (40 fiat currencies available), the response will have an array amountInConvertCurrencies |
| sortCurrency | xrp / 'xah' |
(Only available on paid API plans) one of the currencies from the convertCurrencies or xrp to sort the list by, for example: usd (optional) |
| currency | null | specify a currency to filter sales in a specific currency, for example xrp (should be specified if there are no convertCurrencies and sortCurrency) |
| currencyIssuer | null | if currency is specified and it is not 'xrp', then you must specify the currency issuer XRPL address (optional) |
| saleType | all |
can be primary or secondary (optional, primary - the sales from the issuer address) |
| collection | null | The collection ID (optional), can be used for Sologenic collections (specify an issuer), and for standard collections instead of using issuer and taxon, in the format: issuer:taxon |
| issuer | null | The address of the NFT issuer (optional) |
| taxon | null | Taxon for that Issuer (optional, will be ignored without an Issuer) |
| buyer | null | (Only available on paid API plans) The address of the Buyer (optional) |
| seller | null | (Only available on paid API plans) The address of the Seller (optional) |
| period | all |
A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year or a time period as timestamps from..to 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
| marketplace | null | You can specify a marketplace, to filter sales by a specific marketplace, for example xrp.cafe, the list of all marketplaces is here (optional) |
| marker | null | The marker from the previous request, if you need a next page of NFTs |
NFT Volumes
curl "https://bithomp.com/api/v2/nft-volumes?list=issuers¤cy=xrp"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-volumes?list=issuers¤cy=xrp", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-volumes?list=issuers¤cy=xrp");
print $data;
The above command returns JSON structured like this:
{
"list": "issuers",
"period": "all",
"saleType": "all",
"marker": "753DF10F00000001",
"volumes": [
{
"amount": "3183301846633",
"sales": 1388,
"issuer": "rpbjkoncKiv1LkPWShzZksqYPzKXmUhTW7",
"issuerDetails": {
"username": "XPUNKS",
"service": "XPUNKS"
},
"buyers": 419,
"tradedNfts": 1015,
"totalOwners": 1872,
"totalNfts": 6751,
"floorPrice": {
"open": {
"amount": "2400000000"
},
"private": {
"amount": "1150000000",
"destination": "rpZqTPC8GvrSvEfFsUuHkmPCg29GdQuXhC",
"destinationDetails": {
"username": null,
"service": "onXRP"
}
}
}
},
{
"amount": "1770531477817",
"sales": 1582,
"issuer": "rEzbi191M5AjrucxXKZWbR5QeyfpbedBcV",
"issuerDetails": {
"username": "BoredApesXRP",
"service": "Bored Apes XRP Club"
},
"buyers": 368,
"tradedNfts": 1358,
"totalOwners": 1583,
"totalNfts": 10064,
"floorPrice": {
"open": {
"amount": "750000000"
},
"private": {
"amount": "500000000",
"destination": "rpx9JThQ2y37FaGeeJP7PXDUVEXY3PHZSC",
"destinationDetails": {
"username": null,
"service": "xrp.cafe"
}
}
}
}
]
}
This endpoint retrieves NFT Sales Volumes for specified parameters
HTTP Request
GET https://bithomp.com/api/v2/nft-volumes
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| list | null | issuers, currencies, brokers or marketplaces (If you are looking for collections, use NFT Volumes Extended endpoint) |
| currency | null | Must be specified for issuers, brokers and marketplaces, for example as xrp |
| currencyIssuer | null | if currency is specified and it is not 'xrp', then you must specify the currency issuer XRPL address (optional) |
| saleType | all |
can be primary or secondary (optional, primary - the sales from the issuer address) |
| period | all |
A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year |
| floorPrice | false | (Only available on paid API plans) Returns floorPrice for issuers. The lowest VALID sell offers for an NFT from that collection, the lowest on the open market and the lowest on one of the identified market places. |
NFT Volumes Extended
curl "https://bithomp.com/api/v2/nft-volumes-extended?list=collections&convertCurrencies=usd&sortCurrency=usd&floorPrice=true&statistics=true&period=week&saleType=secondary&assets=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-volumes-extended??list=collections&convertCurrencies=usd&sortCurrency=usd&floorPrice=true&statistics=true&period=week&saleType=secondary&assets=true", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-volumes-extended??list=collections&convertCurrencies=usd&sortCurrency=usd&floorPrice=true&statistics=true&period=week&saleType=secondary&assets=true");
print $data;
The above command returns JSON structured like this:
{
"list": "collections",
"period": "week",
"convertCurrencies": [
"usd"
],
"sortCurrency": "usd",
"statistics": true,
"saleType": "secondary",
"floorPrice": true,
"marker": "7029546C00000001",
"summary": {
"all": {
"volumes": [
{
"amount": "234369189287",
"sales": 1440,
"amountInConvertCurrencies": {
"usd": "140788.52012833307"
}
},
{
"amount": {
"currency": "7853504543544152000000000000000000000000",
"issuer": "rh5jzTCdMRCVjQ7LT6zucjezC47KATkuvv",
"value": "14000"
},
"sales": 2,
"amountInConvertCurrencies": {
"usd": "109.55480896211189029074672379403895104112"
},
"currencyDetails": {
"type": "hex",
"currencyCode": "7853504543544152000000000000000000000000",
"currency": "xSPECTAR"
}
}
],
"sales": 1448,
"volumesInConvertCurrencies": {
"usd": "140913.35322087784071852423843308170024169712"
}
}
},
"lastAcceptedAt": 1724681821,
"collections": [
{
"collection": "rPeRQQ8kaMej5b1E7tjkwFPm2xMFQofkdG:0",
"sales": 170,
"collectionDetails": {
"collection": "rPeRQQ8kaMej5b1E7tjkwFPm2xMFQofkdG:0",
"name": "Cryptoland Cryptopians",
"family": "Avatars",
"description": null,
"assets": {
"image": "https://cdn.bithomp.com/image/image_hash.png",
"preview": "https://cdn.bithomp.com/preview/preview_hash.png",
"thumbnail": "https://cdn.bithomp.com/thumbnail/thumbail_hash.png"
},
"image": "https://community-cryptoland-2.nyc3.cdn.digitaloceanspaces.com/upload/land/image/cryptoland01.jpg",
"issuer": "rPeRQQ8kaMej5b1E7tjkwFPm2xMFQofkdG",
"issuerDetails": {
"address": "rPeRQQ8kaMej5b1E7tjkwFPm2xMFQofkdG",
"username": null,
"service": "CryptoLand"
},
"taxon": 0
},
"floorPrices": [
{
"open": {
"amount": "860000000"
},
"private": {
"amount": "469000000",
"destination": "rpZqTPC8GvrSvEfFsUuHkmPCg29GdQuXhC",
"destinationDetails": {
"username": null,
"service": "onXRP"
}
}
}
],
"statistics": {
"buyers": 32,
"tradedNfts": 165,
"owners": 3715,
"nfts": 29852
},
"volumesInConvertCurrencies": {
"usd": "102166.04935985"
},
"volumes": [
{
"amount": "170175665000",
"sales": 170,
"amountInConvertCurrencies": {
"usd": "102166.04935985"
}
}
]
},
{
"collection": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME:0",
"sales": 13,
"collectionDetails": {
"collection": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME:0",
"name": null,
"family": null,
"description": null,
"image": "QmTA3YRvEndxzENJC1GuNuSEZFCtGUkw2Lq91iQdA86yLj/1.png",
"issuer": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"issuerDetails": {
"address": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"username": "Zerpmon",
"service": "Zerpmon"
},
"assets": {
"image": "https://cdn.bithomp.com/image/image_hash.png",
"preview": "https://cdn.bithomp.com/preview/preview_hash.png",
"thumbnail": "https://cdn.bithomp.com/thumbnail/thumbail_hash.png",
},
"taxon": 0
},
"floorPrices": [
{
"open": null,
"private": {
"amount": "325000000",
"destination": "rpx9JThQ2y37FaGeeJP7PXDUVEXY3PHZSC",
"destinationDetails": {
"username": "xrpcafe",
"service": "xrp.cafe"
}
}
}
],
"statistics": {
"buyers": 8,
"tradedNfts": 13,
"owners": 243,
"nfts": 1807
},
"volumesInConvertCurrencies": {
"usd": "5329.7998368721"
},
"volumes": [
{
"amount": "8769239310",
"sales": 13,
"amountInConvertCurrencies": {
"usd": "5329.7998368721"
}
}
]
}
]
}
This endpoint retrieves Extended NFT Sales Volumes for specified parameters (Only available on paid API plans)
HTTP Request
GET https://bithomp.com/api/v2/nft-volumes-extended
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| list | null | collections, marketplaces, issuers, taxons, currencies or brokers |
| issuer | null | An XRPL address or username of the NFT issuer, must be specified for list taxons, to receive separate volumes for each taxon of the issuer |
| currency | null | By default returns for all currencies, you can set any XRPL currency for example xrp (optional) |
| currencyIssuer | null | if currency is specified and it is not 'xrp', then you must specify the currency issuer XRPL address (optional) |
| convertCurrencies | null | the list of currencies to convert amounts and volumes to, splitted by comma, for example xrp,usd (40 fiat currencies available), the response will have amountInConvertCurrencies and volumesInConvertCurrencies |
| sortCurrency | xrp |
one of the currencies from the convertCurrencies or xrp to sort the list by, for example: usd (optional) |
| saleType | all |
can be primary or secondary (optional, primary - the sales from the issuer address) |
| period | all |
A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year or as timestamps from..to, examples: 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
| floorPrice | false | Returns floorPrice for collections and issuers. The lowest VALID sell offers for an NFT from that collection, the lowest on the open market and the lowest on one of the identified market places. |
| statistics | false | Returns statistics for collections and issuers and taxons. Which includes: buyers - current buyers count, tradedNfts - current count of traded NFTS, owners - current count of owners, nfts - current count of NFTs |
| marker | null | The marker from the previous request, if you need a next page |
| assets | false | (For Standard plan and hire) For list collections returns collection previews, assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. |
NFT Minters
curl "https://bithomp.com/api/v2/nft-marketplaces?period=week"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-marketplaces?period=week", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-marketplaces?period=week");
print $data;
The above command returns JSON structured like this:
{
{
"period": "all",
"summary": {
"minted": 1873080,
"mintedAndBurned": 306224,
"burned": 306224
},
"marketplaces": [
{
"marketplace": "unknown",
"minted": 616658,
"mintedAndBurned": 186176,
"burned": 186176
},
{
"marketplace": "onxrp.com",
"minted": 299713,
"mintedAndBurned": 22778,
"burned": 22778
},
{
"marketplace": "xmart.art",
"minted": 261204,
"mintedAndBurned": 16843,
"burned": 16843
},
{
"marketplace": "xrp.cafe",
"minted": 186707,
"mintedAndBurned": 3785,
"burned": 3785
},
{
"marketplace": "xrpnft.com",
"minted": 153240,
"mintedAndBurned": 49818,
"burned": 49818
},
{
"marketplace": "sologenic.org",
"minted": 98900,
"mintedAndBurned": 6210,
"burned": 6210
}
]
}
}
This endpoint retrieves NFT minters on XRPL for a specified period of time
HTTP Request
GET https://bithomp.com/api/v2/nft-marketplaces
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| period | all |
A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year or as timestamps from..to, examples: 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
NFT Mint Chart
curl "https://bithomp.com/api/v2/nft-chart?span=day&period=month"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-chart?span=day&period=month", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-chart?span=day&period=month");
print $data;
The above command returns JSON structured like this:
{
"span": "day",
"period": "month",
"chart": [
{
"time": "2024-01-19T23:59:59.999Z",
"issues": 11969
},
{
"time": "2024-01-20T23:59:59.999Z",
"issues": 2173
}
]
}
This endpoint retrieves NFT mints count for a specified period of time, with a specified span (available only on the Standard plan and higher)
HTTP Request
GET https://bithomp.com/api/v2/nft-chart
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| period | all |
A time period, all time all, last hour hour, last 24h day, last 7 days week, last 30 days month, last 365 days year or as timestamps from..to, examples: 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
| span | null | A time span for the chart, can be minute, hour, day, month, year, not all spans are available for large periods, for a period hour you can have minute, for periods up to 60 hours, you can have hour, day, month, for up to 60 days - day, month. |
NFT Sales Chart
curl "https://bithomp.com/api/v2/nft-sales-chart?span=day&period=month&convertCurrencies=usd&saleType=secondary"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/nft-sales-chart?span=day&period=month&convertCurrencies=usd&saleType=secondary", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/nft-sales-chart?span=day&period=month&convertCurrencies=usd&saleType=secondary");
print $data;
The above command returns JSON structured like this:
{
"span": "day",
"saleType": "secondary",
"period": "month",
"convertCurrencies": [
"usd"
],
"chart": [
{
"time": "2024-01-20T23:59:59.999Z",
"sales": 251,
"amountInNativeCurrency": "12595.349685",
"amountInConvertCurrencies": {
"usd": "6896.94474652027"
}
},
{
"time": "2024-01-21T23:59:59.999Z",
"sales": 405,
"amountInNativeCurrency": "19519.066439",
"amountInConvertCurrencies": {
"usd": "10764.85431987046"
}
}
]
}
This endpoint retrieves NFT Sales Volumes Chart data for a specified period of time, with a specified span (available only on the Standard plan and higher)
HTTP Request
GET https://bithomp.com/api/v2/nft-sales-chart
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| period | all |
A time period, all time all, last hour hour, last 24h day, last 7 days week, last 30 days month, last 365 days year or as timestamps from..to, examples: 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
| span | null | A time span for the chart, can be minute, hour, day, month, year, not all spans are available for large periods, for a period hour you can have minute, for periods up to 60 hours, you can have hour, day, month, for up to 60 days - day, month. |
| issuer | null | An address or username of the NFT issuer (optional, if you want to get data for a specific issuer) |
| taxon | null | Taxon for that issuer (optional, will be ignored without an issuer) |
| currency | null | By default returns for all currencies, you can set any currency for example xrp (optional) |
| currencyIssuer | null | if currency is specified and it is not 'xrp', then you must specify the currency issuer address (optional) |
| convertCurrencies | null | the list of currencies to convert amounts and volumes to, splitted by comma, for example xrp,usd (40 fiat currencies available), the response will have amountInConvertCurrencies |
| saleType | all |
can be primary or secondary (optional, primary - the sales from the issuer address) |
NFT Crawler (Last update)
curl "https://bithomp.com/api/v2/statistics/nftokens/crawler"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/statistics/nftokens/crawler", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/statistics/nftokens/crawler");
print $data;
The above command returns JSON structured like this:
{
"ledgerIndex": 82078753,
"ledgerTime": 1692949961
}
This endpoint returns the last ledger which was crawled by our NFT crawler.
HTTP Request
GET https://bithomp.com/api/v2/statistics/nftokens/crawler
Response Format
| Field | Value | Description |
|---|---|---|
| ledgerIndex | Integer | The last crawled ledger index. |
| ledgerTime | Integer | UNIX timestamp of the last crawled ledger. |
URI-TOKENS (NFT, XLS-35)
NFT
curl "https://xahauexplorer.com/api/v2/nft/850D545622313337B41728F7C380729E173D9197FA858493374084BBE75FF18D?uri=true&metadata=true&history=true&sellOffers=true&offersValidate=true&offersHistory=true&convertCurrencies=usd"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://xahauexplorer.com/api/v2/nft/850D545622313337B41728F7C380729E173D9197FA858493374084BBE75FF18D?uri=true&metadata=true&history=true&sellOffers=true&offersValidate=true&offersHistory=true&convertCurrencies=usd", getData);
$data = curl_bithomp("https://xahauexplorer.com/api/v2/nft/850D545622313337B41728F7C380729E173D9197FA858493374084BBE75FF18D?uri=true&metadata=true&history=true&sellOffers=true&offersValidate=true&offersHistory=true&convertCurrencies=usd");
print $data;
The above command returns JSON structured like this:
{
"type": "xls35",
"nftokenID": "850D545622313337B41728F7C380729E173D9197FA858493374084BBE75FF18D",
"uritokenID": "850D545622313337B41728F7C380729E173D9197FA858493374084BBE75FF18D",
"flags": {
"burnable": false
},
"owner": "r47eK7FT1jXBF1WnwF1uWKGpL1A9zXzs4A",
"issuer": "rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89",
"uri": "68747470733A2F2F6170692E767072612E6170702F76312F6D657461646174613F6163636F756E743D72555969544C59704E384D34784C687452443948515A4677715A3457614B4A633839266E616D6573706163653D33424531443432324134363038354531374634413139443345443730374338363639323741364433353441353632433435413738463146303344374334313138266B65793D43303843413845314442414241333933464336424342424135454239453130444235433542384333333041364531394236314332443145444145413444394241",
"digest": "C08CA8E1DBABA393FC6BCBBA5EB9E10DB5C5B8C330A6E19B61C2D1EDAEA4D9BA",
"amount": null,
"destination": null,
"issuedAt": 1730873082,
"ownerChangedAt": 1730873082,
"deletedAt": null,
"mintedByMarketplace": null,
"collection": null,
"url": "https://api.vpra.app/v1/metadata?account=rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89&namespace=3BE1D422A46085E17F4A19D3ED707C866927A6D354A562C45A78F1F03D7C4118&key=C08CA8E1DBABA393FC6BCBBA5EB9E10DB5C5B8C330A6E19B61C2D1EDAEA4D9BA",
"metadata": {
"attributes": [
{
"trait_type": "id",
"value": 166
},
{
"trait_type": "name",
"value": "Fatty"
},
{
"trait_type": "gender",
"value": 1
},
{
"trait_type": "age",
"value": 0
},
{
"trait_type": "breed",
"value": 3
},
{
"trait_type": "size",
"value": 3
},
{
"trait_type": "body",
"value": 7
},
{
"trait_type": "hooves",
"value": 9
},
{
"trait_type": "speed",
"value": 75
},
{
"trait_type": "stamina",
"value": 8
},
{
"trait_type": "temperament",
"value": 6
},
{
"trait_type": "training",
"value": 6
},
{
"trait_type": "health",
"value": 6
},
{
"trait_type": "lifespan",
"value": 50
},
{
"trait_type": "affinity",
"value": 14
},
{
"trait_type": "morale",
"value": 0
},
{
"trait_type": "is_breedable",
"value": 0
},
{
"trait_type": "breed_price",
"value": 0
},
{
"trait_type": "token_id",
"value": "850D545622313337B41728F7C380729E173D9197FA858493374084BBE75FF18D"
},
{
"trait_type": "wins",
"value": 0
},
{
"trait_type": "total",
"value": 0
}
],
"collection": {
"family": "VPRA",
"issuer": "rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89",
"name": "Virtual Pet Racing Adventure",
"taxon": "0"
},
"description": "An AI-enhanced robotic rabbit, designed for rapid leaps and agile sprints.",
"external_url": "https://vpra.app",
"hash": "1D18E734AF2AB1082D69937494D98016165E9B4E40E242EE245D60B325E91327",
"image": "ipfs://QmR54jrMjyiq547znh4xBGnhJDDyZvySvGSHPFMst2ciXU",
"name": "Fatty #166",
"nftType": "vpra.v1"
},
"jsonMeta": true,
"history": [
{
"owner": "r47eK7FT1jXBF1WnwF1uWKGpL1A9zXzs4A",
"changedAt": 1730873082,
"ledgerIndex": 9690402,
"txHash": "815CBB6A13A6C94CACC1333FFAA825EE565E4BE1AB2B4DC32355E0B4E98198A9",
"marketplace": null,
"amount": "0",
"ownerDetails": {
"username": "MillionHeadsUP",
"service": null
}
},
{
"owner": "rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89",
"changedAt": 1730873082,
"ledgerIndex": 9690402,
"txHash": "815CBB6A13A6C94CACC1333FFAA825EE565E4BE1AB2B4DC32355E0B4E98198A9",
"marketplace": null,
"ownerDetails": {
"username": null,
"service": null
}
}
],
"sellOffers": null,
"issuerDetails": {
"username": null,
"service": null
},
"ownerDetails": {
"username": "MillionHeadsUP",
"service": null
}
}
This endpoint retrieves information for a requested NFT.
HTTP Request
GET https://xahauexplorer.com/api/v2/nft/<uritokenID>
URL Parameters
| Parameter | Description |
|---|---|
| uritokenID | An URI Token ID |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| uri | false | If set to true, the result will include uri and url. |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
| sellOffers | false | If set true, the result will include sellOffers. |
| history | false | If set to true, the result will include history. |
| metadata | false | If set to true, the result will include metadata. |
| offersValidate | false | (Only available on paid API plans) If set to true, each offer will include valid as true or false, if false then it also include validationErrors array. |
| offersHistory | false | (Only available on paid API plans) If set to true, each result will include historical offers which are already accepted or canceled. |
| convertCurrencies | null | (Only available on paid API plans) the list of currencies to convert amount to, splitted by comma, for example xrp,usd (40 fiat currencies available), the for history response will have an array amountInConvertCurrencies |
| collectionDetails | false | (Only available on paid API plans) If set to true, each nft will include collectionDetails with the collection details. if parameter assets is set as true, you will also get assets in the collectionDetails. |
Validate NFT Offer
curl -H "Content-Type: application/json"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
--request POST
--data '{"Account": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME", "URITokenID": "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011", "Amount": "1000000", "Destination": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME" }'
https://bithomp.com/api/v2/uritoken-offer/validateOffer
$.ajax({
url: "https://bithomp.com/api/v2/uritoken-offer/validateOffer",
type: "POST",
contentType: "application/json",
headers: {
"x-bithomp-token": "abcd-abcd-0000-abcd-0123abcdabcd"
},
data: {
"Account": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"URITokenID": "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011",
"Amount": "1000000",
"Destination": "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME"
},
success: function(result) {
console.log(JSON.stringify(result, undefined, 2));
},
error: function(error) {
console.log(error);
}
});
$data = array(
"Account" => "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME",
"URITokenID" => "0008138874D997D20619837CF3C7E1050A785E9F9AC53D7E8542EAAC00000011",
"Amount" => "1000000",
"Destination" => "rBeistBLWtUskF2YzzSwMSM2tgsK7ZD7ME"
);
$data = json_encode($data);
$ch = curl_init("https://bithomp.com/api/v2/uritoken-offer/validateOffer");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd'
));
$response = curl_exec($ch);
curl_close($ch);
print $response;
The above command returns JSON structured like this:
{
... same as NFT Offer response ...,
valid: true
}
This endpoint validates an NFT Offer, it checks if the offer is valid and returns valid as true or false, if false then it also includes validationErrors array. Available only on paid API plans.
HTTP Request
POST https://bithomp.com/api/v2/uritoken-offer/validateOffer
Headers
| Parameter | Description |
|---|---|
| x-bithomp-token | Your API token |
Body Parameters
| Parameter | Description |
|---|---|
| Account | The account address of the offer creator |
| URITokenID | The NFT ID |
| Amount | The amount of the offer |
| Destination | The destination address for the offer |
NFTS
curl "https://xahauexplorer.com/api/v2/uritokens?list=uritokens&issuedAt=all&order=mintedNew&hasImage=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://xahauexplorer.com/api/v2/uritokens?list=uritokens&issuedAt=all&order=mintedNew&hasImage=true", getData);
$data = curl_bithomp("https://xahauexplorer.com/api/v2/uritokens?list=uritokens&issuedAt=all&order=mintedNew&hasImage=true");
print $data;
The above command returns JSON structured like this:
{
"type": "xls35",
"list": "uritokens",
"order": "mintedNew",
"hasMetadata": true,
"hasImage": true,
"issuedAt": "all",
"uritokens": [
{
"type": "xls35",
"nftokenID": "FA21DE7E29087E30F546828F06C33D2CE926B1E433D7368F31F8382EA84BCDC2",
"uritokenID": "FA21DE7E29087E30F546828F06C33D2CE926B1E433D7368F31F8382EA84BCDC2",
"flags": {
"burnable": false
},
"owner": "r47eK7FT1jXBF1WnwF1uWKGpL1A9zXzs4A",
"issuer": "rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89",
"uri": "68747470733A2F2F6170692E767072612E6170702F76312F6D657461646174613F6163636F756E743D72555969544C59704E384D34784C687452443948515A4677715A3457614B4A633839266E616D6573706163653D33424531443432324134363038354531374634413139443345443730374338363639323741364433353441353632433435413738463146303344374334313138266B65793D46463645393442363835324638314345333442373933354341444138334139424637423632333233363646443138384339414236394632323736434233313237",
"digest": "FF6E94B6852F81CE34B7935CADA83A9BF7B6232366FD188C9AB69F2276CB3127",
"amount": null,
"destination": null,
"issuedAt": 1730896291,
"ownerChangedAt": 1730896291,
"deletedAt": null,
"mintedByMarketplace": null,
"collection": null,
"url": "https://api.vpra.app/v1/metadata?account=rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89&namespace=3BE1D422A46085E17F4A19D3ED707C866927A6D354A562C45A78F1F03D7C4118&key=FF6E94B6852F81CE34B7935CADA83A9BF7B6232366FD188C9AB69F2276CB3127",
"metadata": {
"attributes": [
{
"trait_type": "id",
"value": 168
},
{
"trait_type": "name",
"value": "Trump"
},
{
"trait_type": "gender",
"value": 1
},
{
"trait_type": "age",
"value": 0
},
{
"trait_type": "breed",
"value": 2
},
{
"trait_type": "size",
"value": 4
},
{
"trait_type": "body",
"value": 3
},
{
"trait_type": "hooves",
"value": 4
},
{
"trait_type": "speed",
"value": 55
},
{
"trait_type": "stamina",
"value": 2
},
{
"trait_type": "temperament",
"value": 2
},
{
"trait_type": "training",
"value": 2
},
{
"trait_type": "health",
"value": 2
},
{
"trait_type": "lifespan",
"value": 50
},
{
"trait_type": "affinity",
"value": 46
},
{
"trait_type": "morale",
"value": 0
},
{
"trait_type": "is_breedable",
"value": 0
},
{
"trait_type": "breed_price",
"value": 0
},
{
"trait_type": "token_id",
"value": "FA21DE7E29087E30F546828F06C33D2CE926B1E433D7368F31F8382EA84BCDC2"
},
{
"trait_type": "wins",
"value": 0
},
{
"trait_type": "total",
"value": 0
}
],
"collection": {
"family": "VPRA",
"issuer": "rUYiTLYpN8M4xLhtRD9HQZFwqZ4WaKJc89",
"name": "Virtual Pet Racing Adventure",
"taxon": "0"
},
"description": "A sleek AI robotic cat, engineered for speed and reflexive racing precision.",
"external_url": "https://vpra.app",
"hash": "9AD902D77753AF68735E9B4A6314AF28533E61D0EAE1D40E516D6E5CAC1A2C5B",
"image": "ipfs://QmZAgJvC6oZVMogoNLUeFFbQ1TJbSgbZsXdQjtDNGbTP19",
"name": "Trump #168",
"nftType": "vpra.v1"
},
"jsonMeta": true,
"issuerDetails": {
"username": null,
"service": null
},
"ownerDetails": {
"username": "MillionHeadsUP",
"service": null
}
},
This endpoint retrieves a List of NFTs for specified parameters
HTTP Request
GET https://xahauexplorer.com/api/v2/uritokens
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| owner | null | The address of the Owner |
| issuer | null | The address of the Issuer |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
| hasMetadata | false | set to true, to list NFTs only with available metadata |
| hasImage | false | set to true, to list NFTs only with available images |
| hasMedia | false | set to true, to list NFTs only with available media data: audio, video, image |
| includeDeleted | false | set to true, if you want result to include deleeted NFTs |
| mintedByMarketplace | null | Here you can specify a minter from https://bithomp.com/nft-minters?period=all to filter your search by minter project. |
| marker | null | The marker from the previous request, if you need a next page of NFTs |
| list | uritokens |
(Only available on paid API plans) can be set to onSale to get the list of NFTs with active sell offers |
| destination | all |
(Only available on paid API plans) used to filter NFTs for sale list=onSale, can be set as an address (to specify a particular MarketPlace), public, knownBrokers, publicAndKnownBrokers, all |
| order | null | (Only available on paid API plans) used to order NFTs: 1. for list=nfts, can be mintedNew and mintedOld, 2. for list=onSale, can be offerCreatedNew, offerCreatedOld, priceLow, priceHigh |
| currency | null | (Only available on paid API plans) used to filter NFTs for sale list=onSale, can be XRP or any other currency code. |
| currencyIssuer | null | (Only available on paid API plans) A currency issuer for the currency if it is not an XRP. |
| issuedAt | null | (Only available on paid API plans) It can be used to show NFTs which were minted during some period of time. A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year, or 1671490800000..1671663600000 - period or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z, to show from specific date till now: 1671490800000.. or 2022-12-20T00:00:00.000Z.. |
| deletedAt | null | (Only available on paid API plans) It can be used to show NFTs which were burned during some period of time. A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year. or 1671490800000..1671663600000 - period or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z, to show from specific date till now: 1671490800000.. or 2022-12-20T00:00:00.000Z.. |
| sellOffers | false | (Available for the Premium plan and higher) If set true, the NFTs will include sellOffers. |
| history | false | (Available for the Premium plan and higher) If set to true, the NFTs will include history. |
| offersValidate | false | (Available for the Premium plan and higher) If set to true, each NFT offer will include valid as true or false, if false then it also include validationErrors array. |
| offersHistory | false | (Available for the Premium plan and higher) If set to true, each NFT will include historical offers which are already accepted or canceled. |
| limit | 100 | The number of NFTs to return. (More than 100 is available for the Standard plan and higher). |
| ids | null | (Available for the Standard plan and higher) A list of NFT IDs separated by commas (max 100), to get information about specific NFTs. Formats: ids=abc,def, ids[]=abc&ids[]=def or ids=abc&ids=def. |
NFT Offers
curl "https://xahauexplorer.com/api/v2/uritoken-offers/ekiserrepe?nftoken=true&offersValidate=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://xahauexplorer.com/api/v2/uritoken-offers/ekiserrepe?nftoken=true&offersValidate=true", getData);
$data = curl_bithomp("https://xahauexplorer.com/api/v2/uritoken-offers/ekiserrepe?nftoken=true&offersValidate=true");
print $data;
The above command returns JSON structured like this:
{
"owner": "rf1NrYAsv92UPDd8nyCG4A3bez7dhYE61r",
"list": "offers",
"ownerDetails": {
"username": "ekiserrepe",
"service": "Ekiserrepe"
},
"nftOffers": [
{
"type": "xls35",
"nftokenID": "BEA3986C0F23A26B541F514FC393EAC579DE20DF99C1EAD6EE2CABF4084879C8",
"uritokenID": "BEA3986C0F23A26B541F514FC393EAC579DE20DF99C1EAD6EE2CABF4084879C8",
"createdAt": 1715879272,
"createdLedgerIndex": 5446597,
"createdTxHash": "7FA83536947E4A5A95466228791EAEC8B45E31A545642D49F4DDB4E668E49A8B",
"account": "rf1NrYAsv92UPDd8nyCG4A3bez7dhYE61r",
"owner": "rf1NrYAsv92UPDd8nyCG4A3bez7dhYE61r",
"destination": null,
"amount": "200000000",
"nftoken": {
"type": "xls35",
"nftokenID": "BEA3986C0F23A26B541F514FC393EAC579DE20DF99C1EAD6EE2CABF4084879C8",
"uritokenID": "BEA3986C0F23A26B541F514FC393EAC579DE20DF99C1EAD6EE2CABF4084879C8",
"flags": {
"burnable": false
},
"owner": "rf1NrYAsv92UPDd8nyCG4A3bez7dhYE61r",
"issuer": "rf1NrYAsv92UPDd8nyCG4A3bez7dhYE61r",
"uri": "68747470733A2F2F636F736D696378616861752E636F6D2F6E66742F726E39784E314D557458436451444D57687845516A47565274583639624B693651472F30323335366233362D343061342D343165382D393037392D643632393765643565363631",
"digest": "4F6FCD290EC2BE89F8A31826F19EF3BF281C910D0A80161549357432C29A514C",
"amount": "200000000",
"destination": null,
"issuedAt": 1715879120,
"ownerChangedAt": 1715879122,
"deletedAt": null,
"mintedByMarketplace": null,
"collection": null,
"url": "https://cosmicxahau.com/nft/rn9xN1MUtXCdQDMWhxEQjGVRtX69bKi6QG/02356b36-40a4-41e8-9079-d6297ed5e661",
"metadata": {
"name": "Winnie #783",
"description": "Winnie on Xahau!",
"image": "https://cosmicxahau.com/nft/rn9xN1MUtXCdQDMWhxEQjGVRtX69bKi6QG/787e551e-ae63-40c5-99fa-d564f82fdce5",
"date": 1715834342655,
"attributes": [
{
"name": "Background",
"value": "Enchanted"
},
{
"name": "Winnie",
"value": "Winnie"
},
{
"name": "Clothes",
"value": "Pajama"
},
{
"name": "Mouth",
"value": "Normal"
},
{
"name": "Eyes",
"value": "Heart"
},
{
"name": "Hat",
"value": "Fisherman Hat"
},
{
"name": "Hand",
"value": "None"
}
]
},
"jsonMeta": true,
"issuerDetails": {
"username": "ekiserrepe",
"service": "Ekiserrepe"
},
"ownerDetails": {
"username": "ekiserrepe",
"service": "Ekiserrepe"
}
},
"accountDetails": {
"username": "ekiserrepe",
"service": "Ekiserrepe"
},
"ownerDetails": {
"username": "ekiserrepe",
"service": "Ekiserrepe"
},
"valid": true
}
]
}
This endpoint retrieves NFT Offers created by an address or NFT Offers for all NFTs owned by that address.
HTTP Request
GET https://xahauexplorer.com/api/v2/uritoken-offers/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | An address or a username. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| list | null | default - to list all owned NFT offers, privatelyOfferedToAddress - to list all NFT offers where the address is specified as destination (brokers, private offers, nft transfers). |
| nftoken | false | If set to true, each offer will include nftoken data, including metadata. |
| offersValidate | false | (Only available on paid API plans) If set to true, each offer will include valid as true or false, if false then it also include validationErrors array. |
| assets | false | (Only available on the Standard API plan or greater) If set to true, returns assets with direct urls for image 700px x 700px, video 15s, preview 360px x 360px (image, otherwise video frame) and thumbnail 64px x 64px. (See plans for NFT contents for more details or contact us) |
NFT Distribution
curl "https://xahauexplorer.com/api/v2/uritoken-owners?order=nonSelfIssued"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://xahauexplorer.com/api/v2/uritoken-owners?order=nonSelfIssued", getData);
$data = curl_bithomp("https://xahauexplorer.com/api/v2/uritoken-owners?order=nonSelfIssued");
print $data;
The above command returns JSON structured like this:
{
"type": "xls35",
"order": "nonSelfIssued",
"summary": {
"totalNfts": 56303,
"totalOwners": 17256
},
"owners": [
{
"address": "rGKT2MUjPUuoC8WYgZcvVPxfXe9jHz3D6R",
"addressDetails": {
"username": null,
"service": null
},
"total": 410,
"selfIssued": 0,
"nonSelfIssued": 410
},
{
"address": "rEbdxu89jAKmyEETmLW1CWXgMPmXgTLZbh",
"addressDetails": {
"username": null,
"service": null
},
"total": 407,
"selfIssued": 0,
"nonSelfIssued": 407
},
This endpoint retrieves NFT Owners list sorted by NFT count.
HTTP Request
GET https://xahauexplorer.com/api/v2/uritoken-owners
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| order | total |
nonSelfIssued, selfIssued, total (order list by count of total owned NFTS, or only by self-issued NFTs, or only owned NFTs that issued by another address). |
| issuer | null | (optional) NFT issuer address, to see the NFT distribution for a specific issuer. |
| marker | null | (available on paid plans only) The marker from the previous request, if you need a next page of NFT owners. |
NFT Sales
curl "https://xahauexplorer.com/api/v2/uritoken-sales?order=priceHigh&saleType=primaryAndSecondary&period=year&convertCurrencies=usd&sortCurrency=usd&hasImage=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://xahauexplorer.com/api/v2/uritoken-sales?order=priceHigh&saleType=primaryAndSecondary&period=year&convertCurrencies=usd&sortCurrency=usd&hasImage=true", getData);
$data = curl_bithomp("https://xahauexplorer.com/api/v2/uritoken-sales?order=priceHigh&saleType=primaryAndSecondary&period=year&convertCurrencies=usd&sortCurrency=usd&hasImage=true");
print $data;
The above command returns JSON structured like this:
{
"list": "lastSold",
"order": "priceHigh",
"type": "xls35",
"saleType": "all",
"period": "year",
"convertCurrencies": [
"usd"
],
"sortCurrency": "usd",
"hasImage": true,
"total": {
"primary": 256,
"secondary": 39
},
"marker": "16E5DA4D00000001",
"sales": [
{
"type": "xls35",
"nftokenID": "C1012398445F1894412F03C177C89B23D4675B2CE466CCA486791FA0A20B990A",
"uritokenID": "C1012398445F1894412F03C177C89B23D4675B2CE466CCA486791FA0A20B990A",
"acceptedAt": "1707617282",
"acceptedLedgerIndex": "2918626",
"acceptedTxHash": "9FA2CC666EA86AE1B8602593358831D6C0E09290ECEBFAB18C8222D97386FBC9",
"acceptedAccount": "rwb7YRNzwvzeMNkGhhuGESSp4ME4V2Ee9q",
"seller": "r4VzEm7Jbgg3QkPBgMscoppz6JuzK2Jkbd",
"buyer": "rwb7YRNzwvzeMNkGhhuGESSp4ME4V2Ee9q",
"amount": "1000000000",
"marketplace": "xahauexplorer.com",
"saleType": "primary",
"amountInConvertCurrencies": {
"usd": "113.032"
},
"nftoken": {
"type": "xls35",
"nftokenID": "C1012398445F1894412F03C177C89B23D4675B2CE466CCA486791FA0A20B990A",
"uritokenID": "C1012398445F1894412F03C177C89B23D4675B2CE466CCA486791FA0A20B990A",
"flags": {
"burnable": false
},
"owner": "rwb7YRNzwvzeMNkGhhuGESSp4ME4V2Ee9q",
"issuer": "r4VzEm7Jbgg3QkPBgMscoppz6JuzK2Jkbd",
"uri": "697066733A2F2F6261666B726569627064706A6B6B786767366D6261376F357071666A796963636F3432736B36706D626E6576736173756F7A7A637076366B693369",
"digest": "CE446DDF3C759986F00D33D1C94DEBFF6ADFE1BB7E5DE5081214C172C6943D69",
"amount": null,
"destination": null,
"issuedAt": 1707609120,
"ownerChangedAt": 1707617282,
"deletedAt": null,
"mintedByMarketplace": null,
"collection": null,
"url": "https://ipfs.io/ipfs/bafkreibpdpjkkxgg6mba7o5pqfjyicco42sk6pmbnevsasuozzcpv6ki3i",
"metadata": {
"name": "X cracked 1",
"description": "Serial number: 1. Second Edition Ridworld NFT Card. Rare Legend (rl)",
"image": "ipfs://bafybeidyaycpuwmhhn7ji4acysaoaa7ohbgf3owxqga5qtfff7a2q3cpfi",
"maxAmountMinted": "589",
"attributes": [
{
"trait_type": "Card Type",
"value": "Crypto"
},
{
"trait_type": "Uploading Cost",
"value": "Empty set"
},
{
"trait_type": "Box Text",
"value": "Add X"
}
],
"game": "Ridworld Collectible NFT Card Game",
"collection": {
"name": "Xahau Second Edition"
},
"collectionUnits": "82 units",
"author": "Enigma",
"external_url": "https://www.ridworld.com",
"boxIllustrationLicense": "EnigmaRidworld, created using Midjourney on Discord",
"jobID": "5e78e4e9-3afc-444e-b3c6-d600a3f357ca",
"seed": "1891785364",
"cardTemplateCreatorCredit": "GenevensiS",
"issuer": "r4VzEm7Jbgg3QkPBgMscoppz6JuzK2Jkbd",
"imageCIDv1NFT.Storage": "bafybeidyaycpuwmhhn7ji4acysaoaa7ohbgf3owxqga5qtfff7a2q3cpfi",
"folderCIDv1NFT.Storage": "bafybeic2ii5qcpvb7fhzgp34w47dskhi7fd5dkeeswywbjxaj2repwlz3m",
"imageCIDv0IPFSdesktop": "Qmbquu4kCqTbotPTSvwQnVzhERidaKFDxd9X7ngc45Y34d",
"imageCIDv1IPFSdesktop": "bafybeigiu3zjy3btwk3wk4chfeckeoaxr2qwuleowc4lxfa2zcs7qizqki",
"blockchain": "XAHAU"
},
"jsonMeta": true,
"issuerDetails": {
"username": null,
"service": null
},
"ownerDetails": {
"username": null,
"service": null
}
},
"sellerDetails": {
"username": null,
"service": null
},
"buyerDetails": {
"username": null,
"service": null
},
"acceptedAccountDetails": {
"username": null,
"service": null
}
},
This endpoint retrieves a List of NFT Sales for specified parameters
HTTP Request
GET https://xahauexplorer.com/api/v2/uritoken-sales
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| list | null | topSold or lastSold (for the list of NFTs sales of the highest price or the latest sell timestamp) |
| convertCurrencies | null | (Only available on paid API plans) the list of currencies to convert amount to, splitted by comma, for example xrp,usd (40 fiat currencies available), the response will have an array amountInConvertCurrencies |
| sortCurrency | xrp / 'xah' |
(Only available on paid API plans) one of the currencies from the convertCurrencies or xrp to sort the list by, for example: usd (optional) |
| currency | null | specify a currency to filter sales in a specific currency, for example xrp (should be specified if there are no convertCurrencies and sortCurrency) |
| currencyIssuer | null | if currency is specified and it is not 'xrp', then you must specify the currency issuer XRPL address (optional) |
| saleType | all |
can be primary or secondary (optional, primary - the sales from the issuer address) |
| issuer | null | The address of the NFT issuer (optional) |
| buyer | null | (Only available on paid API plans) The address of the Buyer (optional) |
| seller | null | (Only available on paid API plans) The address of the Seller (optional) |
| period | all |
A time period, all time all, last 24h day, last 7 days week, last 30 days month, last 365 days year or a time period as timestamps from..to 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
| marketplace | null | You can specify a marketplace, to filter sales by a specific marketplace, for example xrp.cafe, the list of all marketplaces is here (optional) |
| marker | null | The marker from the previous request, if you need a next page of NFTs |
NFT Crawler (Last update)
curl "https://bithomp.com/api/v2/statistics/uritokens/crawler"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/statistics/uritokens/crawler", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/statistics/uritokens/crawler");
print $data;
The above command returns JSON structured like this:
{
"ledgerIndex": 82078753,
"ledgerTime": 1692949961
}
This endpoint returns the last ledger which was crawled by our NFT crawler.
HTTP Request
GET https://bithomp.com/api/v2/statistics/uritokens/crawler
Response Format
| Field | Value | Description |
|---|---|---|
| ledgerIndex | Integer | The last crawled ledger index. |
| ledgerTime | Integer | UNIX timestamp of the last crawled ledger. |
Services
Get services
curl "https://bithomp.com/api/v2/services"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/services", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/services");
print $data;
The above command returns JSON structured like this:
{
"total": 467,
"lastUpdate": 1579417546,
"services": [
{
"name": "Bithomp",
"domain": "bithomp.com",
"socialAccounts": {
"twitter": "bithomp",
"youtube": "channel/UCTvrMnG-Tpqi5FN9zO7GcWw",
"instagram": "bithomp"
},
"addresses": [
{
"address": "rsuUjfWxrACCAwGQDsNeZUhpzXf1n1NK5Z"
},
{
"address": "rnk3N5hHnLS6nWncNh2R4D2ATiuEicjxXo"
},
{
"address": "rhUYLd2aUiUVYkBZYwTc5RYgCAbNHAwkeZ",
"name": "Bithomp activation"
},
{
"address": "rBithomp3UNknnjo8HKNfyS5MN4kdPTZpW"
},
{
"address": "rBithomp4vj5E2kUebx7tVwipBueg55XxS",
"name": "Bithomp donations"
},
{
"address": "rBithompKtixswR4bknJqYaxnm7yRhGYFq",
"name": "Bithomp username"
},
{
"address": "rKontEGtDju5MCEJCwtrvTWQQqVAw5juXe",
"name": "Bithomp validator"
}
]
},
{
}
]
}
This endpoint retrieves a list of identified services.
HTTP Request
GET https://bithomp.com/api/v2/services
Response Format
| Field | Value | Description |
|---|---|---|
| total | Integer | The amount of identified services. |
| lastUpdate | Integer | UNIX timestamp of the last data update. |
| services | Array | Array of services. |
| services[].name | String | A name of a service. |
| services[].domain | String | A domain of a service. |
| services[].socialAccounts | Object | An object with social account of a service. (twitter, youtube, instagram, facebook, medium, telegram, linkedin, reddit) |
| services[].addresses | Array | An array of service's addresses. Each address can have it's own (more specific) name, domain, socialAccounts. |
Addresses from Services
curl "https://bithomp.com/api/v2/services/addresses"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/services/addresses", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/services/addresses");
print $data;
The above command returns JSON structured like this:
{
"total": 1824,
"lastUpdate": 1579417546,
"addresses": {
"rPEPPER7kfTD9w2To4CQk6UCfuHM9c6GDY": {
"name": "XRP Tip Bot",
"domain": "xrptipbot.com",
"socialAccounts": {
"twitter": "xrptipbot"
}
},
"r3kmLJN5D28dHuH8vZNUZpMC43pEHpaocV": {
"name": "Ripple",
"domain": "ripple.com",
"socialAccounts": {
"twitter": "Ripple",
"facebook": "ripplepay",
"linkedin": "ripple-labs"
}
},
}
}
This endpoint retrieves a list of all identified service addresses.
HTTP Request
GET https://bithomp.com/api/v2/services/addresses
Response Format
| Field | Value | Description |
|---|---|---|
| total | Integer | The amount of identified addresses. |
| lastUpdate | Integer | UNIX timestamp of the last data update. |
| addresses | Object | Object with identified addresses. |
| addresses.ADDRESS.name | String | A name of the ADDRESS’s service. |
| addresses.ADDRESS.domain | String | A domain of the ADDRESS’s service. |
| addresses.ADDRESS.socialAccounts | Object | An object with social account of the ADDRESS’s service. (twitter, youtube, instagram, facebook, medium, telegram, linkedin, reddit) |
Status (Last update)
curl "https://bithomp.com/api/v2/services/lastUpdate"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/services/lastUpdate", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/services/lastUpdate");
print $data;
The above command returns JSON structured like this:
{
"lastUpdate": 1579527766,
"totalServices": 475,
"totalAddresses": 1832
}
This endpoint returns a timestamp of last DB update for services/addresses.
HTTP Request
GET https://bithomp.com/api/v2/services/lastUpdate
Response Format
| Field | Value | Description |
|---|---|---|
| lastUpdate | Integer | UNIX timestamp of the last data update. |
| totalServices | Integer | The amount of identified services. |
| totalAddresses | Integer | The amount of identified addresses. |
Address
Get information for an address
curl "https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?username=true&service=true&verifiedDomain=true&inception=true&ledgerInfo=true&bithomp=true&obligations=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getAddressInfo(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?username=true&service=true&verifiedDomain=true&inception=true&ledgerInfo=true&bithomp=true&obligations=true", getAddressInfo);
$addressInfo = curl_bithomp("https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?username=true&service=true&verifiedDomain=true&inception=true&ledgerInfo=true&bithomp=true&obligations=true");
print $addressInfo;
The above command returns JSON structured like this:
{
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"xAddress": "X7WZKEeNVS2p9Tire9DtNFkzWBZbFtJHWxDjN9fCrBGqVA4",
"inception": 1361216760,
"initialBalance": 1500,
"genesis": false,
"bithomp": {
"avatar": "https://cdn.bithomp.com/avatar/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"bithompPro": false
},
obligations: {
"holders": 12187,
"tokens": 7,
"trustlines": 44939
},
"ledgerInfo": {
"activated": true,
"error": null,
"ledger": 69617915,
"ledgerTimestamp": 1645995600,
"balance": "6511036080064",
"flags": {
"passwordSpent": false,
"requireDestTag": true,
"requireAuth": false,
"depositAuth": false,
"disallowXRP": true,
"disableMaster": false,
"noFreeze": false,
"globalFreeze": false,
"defaultRipple": true
},
"ownerCount": 387,
"previousTxnID": "2B0A02B899DC0D384AC14E0AB6DF8E32DBB9941D06696233A6BF03C0EB577027",
"previousTxnLgrSeq": 69617676,
"sequence": 4692,
"accountTxnID": null,
"mintedTokens": 1,
"burnedTokens": 12,
"regularKey": null,
"ticketCount": 5,
"signerList": {
"previousTxnID": "965730F660A808927B7A850F0408FF6532BA385641FC1DC67E2907F41A9E7B75",
"previousTxnLgrSeq": 62412856,
"signerQuorum": 2,
"flags": {
"oneOwnerCount": true
},
"signerEntries": [
{
"account": "re3LGjhrCvthtWWwrfKbVJjXN9PYDeQDJ",
"signerWeight": 1
},
{
"account": "rkPA5RwLVPnJgpcsrzYvHwx1HVfDb6zD3",
"signerWeight": 1
},
{
"account": "rpcL6T32dYb6FDgdm4CnC1DZQSoMvvkLRd",
"signerWeight": 1
}
]
},
"domain": "bitstamp.net",
"emailHash": "5b33b93c7ffe384d53450fc666bb11fb",
"messageKey": null,
"tickSize": null,
"transferRate": 1.002,
"blackholed": false
},
"service": {
"name": "Bitstamp",
"domain": "bitstamp.net",
"socialAccounts": {
"twitter": "Bitstamp",
"facebook": "Bitstamp",
"youtube": null,
"instagram": null,
"linkedin": null,
"reddit": null,
"medium": null,
"telegram": null
}
},
"username": "Bitstamp",
"verifiedDomain": null
}
This endpoint retrieves information for a requested address.
HTTP Request
GET https://bithomp.com/api/v2/address/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | The address, can be old r-address or a new X-address |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| bithomp | false | If set to true, the result will also include avatar image link and bithompPro status. |
| service | false | If set to true, the result will also include Service details. |
| username | false | If set to true, the result will also include a username (rippletrade or bithomp). |
| payString | false | If set to true, the result will also include a bithomp payString for that address. |
| verifiedDomain | false | If set true, the result will include a verifiedDomain if such exists. |
| hashicon | false | If set true, the result will include hashicon which can be used in img's src="" or in css, as background's url. (The icon is the same for x-address and r-address, such hashicons used in Xumm and Bithomp.) |
| parent | false | If set to true, the result will include the same info for a parent account. Also it will add to the root object: genesis, initialBalance, inception |
| nickname | false | If set to true, the result will include an old nickname from bitcointalk forum. |
| flare | false | if set to true, the result will include flare: {spark, songbird, address}. |
| inception | false | if set to true, the result will include: genesis, initialBalance, inception. |
| ledgerInfo | false | if set to true, the result will include ledgerInfo object. (Note: A fee to use this parameter might be introduced in the feature) |
| ledgerTimestamp | null | ISO timestamp or unix timestamp (if set the request will return ledgerInfo data for that timestamp) |
| obligations | false | Available only on paid API plans. if set to true, the result will include obligations object with holders, tokens, trustlines counts. (Not available historically with ledgerTimestamp) |
Address Token Balances
curl "https://bithomp.com/api/v2/trustlines/raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/trustlines/raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/trustlines/raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J");
print $data;
The above command returns JSON structured like this:
[
{
"counterparty": "r4VzEm7Jbgg3QkPBgMscoppz6JuzK2Jkbd",
"balance": "7999.889334554484",
"currency": "GBP",
"limit": "1000000",
"ripplingDisabled": true,
"peer": {
"limit": "0",
"ripplingDisabled": true
}
}
]
[
{
"counterparty": "rEvernodee8dJLaFsujS6q1EiXvZYmHXr8",
"balance": "0.000000003153",
"currency": "EVR",
"limit": "1000000000",
"ripplingDisabled": true,
"peer": {
"limit": "0",
"ripplingDisabled": false
},
"lock": {
"balance": "1974",
"count": 1
}
}
]
This endpoint returns trustlines (IOU/token balances), for XAHAU it is also returns the locked amounts for IOUs (in escrows) (Only available on paid API plans).
HTTP Request
GET https://bithomp.com/api/v2/trustlines/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | The address you want to get token balances for |
Get the list of tokens that address can accept
curl "https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B/acceptedTokens"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getAcceptedTokens(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B/acceptedTokens", getAcceptedTokens);
$acceptedTokens = curl_bithomp("https://bithomp.com/api/v2/address/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B/acceptedTokens");
print $acceptedTokens;
The above command returns JSON structured like this:
{
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"addressDetails": {
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"username": "Bitstamp",
"service": "Bitstamp"
},
"order": "rating",
"limit": 100,
"tokens": [
{
"token": "XRP",
"currency": "XRP",
},
{
"token": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B:BTC",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"issuerDetails": {
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"username": "Bitstamp",
"service": "Bitstamp"
},
"currency": "BTC",
"supply": "338.4736292458294406355702888632461422",
"icon": "https://cdn.bithomp.com/issued-token/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B/BTC",
"name": null,
"description": null,
"lp_token": false,
"trustlines": 17608,
"holders": 4361,
"rating": 4655,
"authorized": true
}
]
}
This endpoint retrieves a list of tokens that the address can accept (has trustlines for with limit over 0 and the user is authorised to hold, all the issued tokens by the address, native currency if no flag "disallowXRP").
HTTP Request
GET https://bithomp.com/api/v2/address/<address>/acceptedTokens
URL Parameters
| Parameter | Description |
|---|---|
| address | The address, can be old r-address or a new X-address |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| order | rating | The order of the tokens in the response. Can be rating, trustlinesHigh, holdersHigh. |
| issuer | null | If set, the response will only include tokens issued by the specified issuer address. |
| currency | null | If set, the response will only include tokens with the specified currency code. |
| currencyDetails | false | If set to true, the response will include additional details for each currency, usefull to get address details (usernames, service names) for each issuer of the currency and for LP token details. NOTE: This will change the response structure! |
| limit | 100 | The maximum number of tokens to return in the response. (More than 100 is available for the Standard plan and higher). |
| marker | null | (only available on paid api plans) The marker to use for pagination. If set, the response will include tokens starting from the specified marker. The marker is a string that can be used to retrieve the next page of results. |
Get the list of obligations (issued tokens)
curl "https://bithomp.com/api/v2/obligations/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?currencyDetails=true"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getObligations(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/obligations/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?currencyDetails=true", getObligations);
$obligations = curl_bithomp("https://bithomp.com/api/v2/obligations/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B?currencyDetails=true");
print $obligations;
The above command returns JSON structured like this:
{
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
obligations: [
{
token: "rBithomp3UNknnjo8HKNfyS5MN4kdPTZpW:BTH",
issuer: "rBithomp3UNknnjo8HKNfyS5MN4kdPTZpW",
issuerDetails: {
address: "rBithomp3UNknnjo8HKNfyS5MN4kdPTZpW",
username: null,
service: null
},
currency: "BTH",
supply: "9999.99899999",
currencyDetails: {...},
}
]
}
This endpoint retrieves a list of obligations (issued tokens) by an address (Only available on paid API plans).
HTTP Request
GET https://bithomp.com/api/v2/obligations/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | The address, can be old r-address or a new X-address |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| ledgerIndex | null | If set, the response will include obligations from the specified ledger index. If not set, the latest ledger will be used. |
| ledgerTimestamp | null | If set, the response will include obligations from the specified ledger timestamp (ISO or unix timestamp). If not set, the latest ledger will be used. |
| currencyDetails | false | If set to true, the response will include additional details for each currency, usefull to get address details (usernames, service names) for each issuer of the currency. NOTE: This will change the response structure! |
Get the list of objects owned by an address
curl "https://bithomp.com/api/v2/objects/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getOwnedObjects(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/objects/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B", getOwnedObjects);
$ownedObjects = curl_bithomp("https://bithomp.com/api/v2/objects/rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B");
print $ownedObjects;
The above command returns JSON structured like this:
{
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"objects": [
{
"Balance": {
"currency": "BTC",
"issuer": "rrrrrrrrrrrrrrrrrrrrBZbvji",
"value": "0"
},
"Flags": 131072,
"HighLimit": {
"currency": "BTC",
"issuer": "rKUK9omZqVEnraCipKNFb5q4tuNTeqEDZS",
"value": "10",
"issuerDetails": {
"address": "rKUK9omZqVEnraCipKNFb5q4tuNTeqEDZS",
"username": null,
"service": null
}
},
"HighNode": "0",
"LedgerEntryType": "RippleState",
"LowLimit": {
"currency": "BTC",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"value": "0",
"issuerDetails": {
"address": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"username": "Bitstamp",
"service": "Bitstamp"
}
},
"LowNode": "0",
"PreviousTxnID": "87591A63051645F37B85D1FBA55EE69B1C96BFF16904F5C99F03FB93D42D0375",
"PreviousTxnLgrSeq": 746872,
"index": "000103996A3BAD918657F86E12A67D693E8FC8A814DA4B958A244B5F14D93E58",
"flags": {
"lowReserve": false,
"highReserve": true,
"lowAuth": false,
"highAuth": false,
"lowNoRipple": false,
"highNoRipple": false,
"lowFreeze": false,
"highFreeze": false,
"ammNode": false,
"lowDeepFreeze": false,
"highDeepFreeze": false
},
"previousTxAt": 1368696800
}
]
}
This endpoint retrieves a list of objects owned by an address, such as trustlines, escrows, offers, etc. (Only available on paid API plans).
HTTP Request
GET https://bithomp.com/api/v2/objects/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | The address, can be old r-address or a new X-address |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| type | null | If set, the response will only include objects of the specified type. Can be check, did, escrow, mpt_issuance, mptoken, offer, payment_channel, signer_list, ticket, state. If not set, all types will be returned. |
| types | null | The type of objects to return. Can be check,did,escrow,mpt_issuance,mptoken,offer,payment_channel,signer_list,ticket. |
| ledgerIndex | null | If set, the response will include objects from the specified ledger index. If not set, the latest ledger will be used. |
| ledgerTimestamp | null | If set, the response will include objects from the specified ledger timestamp (ISO or unix timestamp). If not set, the latest ledger will be used. |
| currencyDetails | false | If set to true, the response will include additional details for each currency, useful to get address details (usernames, service names) for each issuer of the currency. NOTE: This will change the response structure! |
| priceNativeCurrencySpot | false | If set to true, the RippleState objects will include priceNativeCurrencySpot. (if token exist and in our system and has at list a positive rating we will return its price in the Native Currency XRP/XAH). It supports historical spot price too (if you send ledgerIndex or ledgerTimestamp). |
| limit | 100 | The maximum number of objects to return in the response. |
Validator
Get wallet
curl "https://bithomp.com/api/v2/validator/nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getValidatorAddress(json) {
console.log(json.publicKey + " validator's XRPL address: ", json.address);
}
bithompRequest("https://bithomp.com/api/v2/validator/nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA", getValidatorAddress);
$validatorAddress = curl_bithomp("https://bithomp.com/api/v2/validator/nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA");
print $validatorAddress;
The above command returns JSON structured like this:
{
"publicKey": "nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA",
"address": "rKontEGtDju5MCEJCwtrvTWQQqVAw5juXe"
}
This endpoint retrieves an address of a specific validator computed from the validator public key
HTTP Request
GET https://bithomp.com/api/v2/validator/<validatorPublicKey>
URL Parameters
| Parameter | Description |
|---|---|
| validatorPublicKey | The public key of the validator to retrieve |
Validators
Get the list of validators
curl "https://bithomp.com/api/v2/validators"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getValidatorsList(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/validators", getValidatorsList);
$validatorsList = curl_bithomp("https://bithomp.com/api/v2/validators");
print $validatorsList;
The above command returns JSON structured like this:
[
{
"signingKey": "n9Ks1JMzZu2bA9Ue2DsqRouYJHvN3eQecUd2xiBGLMMdMcyPw1L6",
"masterKey": "nHDpm83xDGeY3GsrNoB8RTJneQHX5aogfJxGejc3RYi2jujgVJBA",
"publicKey": "nHDpm83xDGeY3GsrNoB8RTJneQHX5aogfJxGejc3RYi2jujgVJBA",
"address": "rnBQLbrx3CxDnjU5aXNJ9yvPbjQy1c3wNg",
"addressDetails": {
"username": null,
"service": null
},
"domain": "bazakanode.topnode.app",
"ledgerIndex": 99336135,
"ledgerHash": "E3DF6D16E3F8424A721C5BD34381BE7240947CC7B33218C1361BA55D3458BAD9",
"full": true,
"signingTime": 1759749563,
"lastSeenTime": 1759749564,
"baseFee": "10",
"reserveBase": "10000000",
"reserveIncrement": "2000000",
"amendments": null,
"networkID": 0,
"serverVersion": "2.5.0",
"manifest": "JAAAAAFxIe3dAwWFsPg7lec+TPIWFFIWwNd9D1H1IeQ0yisn8dOnqnMhAkKv2acMlAEw4XtB93UcEc9IsnKAvDkv8X5gyKP7uiwtdkcwRQIhAMAo6WryAIggiMQI7R7CX/fVjxO4wLHSkzYGhW1XWBrFAiBB07GxOvT7XyJGAxGLm1ft6dfl2VTBbZm+PchUsY8aZ3cWYmF6YWthbm9kZS50b3Bub2RlLmFwcHASQNk430WGsx5RgHvHAN04h78UOlzpsslsBJV847A8z+ye9geHPGEA1a/ORIaA5/vqA8x324voh7p5HwgS/08vvwE=",
"sequence": 1,
"domainVerified": false,
"verificationMessage": "getaddrinfo ENOTFOUND bazakanode.topnode.app"
},
{
"signingKey": "n9MLGK3YiSFTVGGs8nhiyANMhNAxWJbhYrJ57CJhTMWZ4aPuM3RE",
"masterKey": "nHUdwCKijaKAD8NUUR8sKPV3Kj9F2EJW3E5Lsb62yod2T7kR2y9F",
"publicKey": "nHUdwCKijaKAD8NUUR8sKPV3Kj9F2EJW3E5Lsb62yod2T7kR2y9F",
"address": "raReLguMmcSDbVMr9sNK7xXutqy7ZjtkTg",
"addressDetails": {
"username": null,
"service": null
},
"domain": "joshuahamsa.com",
"ledgerIndex": 99336135,
"ledgerHash": "E3DF6D16E3F8424A721C5BD34381BE7240947CC7B33218C1361BA55D3458BAD9",
"full": true,
"signingTime": 1759749564,
"lastSeenTime": 1759749564,
"baseFee": "1",
"reserveBase": "1000000",
"reserveIncrement": "200000",
"amendments": [
"TokenEscrow",
"fixXChainRewardRounding",
"PermissionedDEX",
"Batch",
"PermissionedDomains",
"PermissionDelegation",
"XChainBridge"
],
"networkID": 0,
"serverVersion": "2.5.0",
"manifest": "JAAAAAJxIe2naaXwp/lMaXtJA66gsQSLEpT8gsnCtXZga4WM7SbrNHMhA29PXDJIiPY8zg5yywtvFEu9pUwG7G6guos/eY1p5A0RdkcwRQIhAMjzwANTJ3T3z5vn1p5PLhaDlruaegf8rB8kkixfgrTUAiAC8ZhY/onOfaT3N438/UjxWC5lXYu5Bja7oDaXwU7+7HcPam9zaHVhaGFtc2EuY29tcBJA5rr1RHIcux/0n/lYBXtn4J2+NPX14eqwOXCHxy0Bgh6DX+ws1HW7JQezTccY4rTlvOrfxPnNfclRndxauNz0Ag==",
"sequence": 2,
"domainVerified": true,
"ownerCountry": "US",
"serverCountry": "US",
"serverLocation": "LFG HQ (Ventura, California)",
"serverCloud": false,
"networkASN": 20001,
"principals": [
{
"name": "Joshua Hamsa",
"email": "[email protected]",
"x": "joshuahamsa",
"github": "joshuahamsa",
"website": "https://joshuahamsa.com"
}
]
},
{
"signingKey": "n9LU9Kdbu75MksS4MTWajXo8YqdcaTpUSe7g7XF5VSmtNqfZx8EG",
"masterKey": "nHU7NkoTxBncNhLBf6M2rqL1Cc2iAj6TJfqdPcaDjLecWfrGsHNf",
"publicKey": "nHU7NkoTxBncNhLBf6M2rqL1Cc2iAj6TJfqdPcaDjLecWfrGsHNf",
"address": "rDUy4B5zDbnwqSDT9eECVCmMnYb7Z66e2n",
"addressDetails": {
"username": null,
"service": null
},
"domain": "xrpl.digitaltrance.net",
"ledgerIndex": 99336135,
"ledgerHash": "E3DF6D16E3F8424A721C5BD34381BE7240947CC7B33218C1361BA55D3458BAD9",
"full": true,
"signingTime": 1759749563,
"lastSeenTime": 1759749563,
"baseFee": "10",
"reserveBase": "10000000",
"reserveIncrement": "2000000",
"amendments": null,
"networkID": 0,
"serverVersion": "2.5.0",
"manifest": "JAAAAAJxIe2TIys2KvQxOt/NUN9CXQgKK/QX4XaGKAKN0Z4/Ar4WBnMhAtks23u6j2ad1AUubr25yzT+NNo/59E/xpWh63FU/NxjdkcwRQIhAPKW0Yv4PFz2Hf0O0BPwwDQhZQy+MFWSllSauZ/H7BvpAiBwX6EZWGBqTMP01FnkCv1ok5muuBrwXhoCxWWTUs8d/XcWeHJwbC5kaWdpdGFsdHJhbmNlLm5ldHASQIGRbaHB2yVriGQQAWKgF022y/8z0LH09heHIctK7Do3IlF03Qr21hd2czX7zCevqaK5+jU+Jso8AufkgWYwSww=",
"sequence": 2,
"domainVerified": true,
"ownerCountry": "us",
"serverCountry": "us",
"serverLocation": null,
"serverCloud": null,
"networkASN": null,
"principals": [
{
"name": "Digitaltrance Productions",
"email": "[email protected]"
}
]
},
{
"signingKey": "n943ozDG74swHRmAjzY6A4KVFBhEirF4Sh1ACqvDePE3CZTgkMqn",
"masterKey": "nHUq9tJvSyoXQKhRytuWeydpPjvTz3M9GfUpEqfsg9xsewM7KkkK",
"publicKey": "nHUq9tJvSyoXQKhRytuWeydpPjvTz3M9GfUpEqfsg9xsewM7KkkK",
"address": "rJGaPD5VyYr4fBQ8JavJA4UgtgP2ARoMWq",
"addressDetails": {
"username": null,
"service": null
},
"domain": null,
"ledgerIndex": 99336135,
"ledgerHash": "E3DF6D16E3F8424A721C5BD34381BE7240947CC7B33218C1361BA55D3458BAD9",
"full": true,
"signingTime": 1759749563,
"lastSeenTime": 1759749563,
"baseFee": "10",
"reserveBase": "10000000",
"reserveIncrement": "2000000",
"amendments": [
"fixXChainRewardRounding",
"PermissionedDomains",
"XChainBridge"
],
"networkID": 0,
"serverVersion": "2.5.1",
"manifest": "JAAAAAFxIe3CoTizdxwgiWVZbU03IzHBelR2vSzivHptPNJz3zMNmXMhA9j/pUGrPDYl63JdWVsqbHWDBdJ9H57NVL42LO6gLwo1dkcwRQIhAJeTyxdK1KYpxxI8kLvhzCz5OhGZ42lFCYMSwMmavI4pAiBsWsvxet4JBhZun9ZoZJpCZ/VuNIt10YlnrtcNcEBe53ASQHDJJeC4NJZlvm1WI5y/byOh4hvY8fqsmD0bXZsSN9G3TRALSLeCkdLRGbJZNMODXflcp+tHfU7FX4JOdRVMxQ0=",
"sequence": 1,
"domainLegacy": "students.cs.ucl.ac.uk",
"domainLegacyVerified": false,
"verificationMessage": "Request failed with status code 404"
}
]
This endpoint retrieves the list of validators that have been seen in the network recently.
HTTP Request
GET https://bithomp.com/api/v2/validators
UNL
Get the list of UNL validators
curl "https://bithomp.com/api/v2/unl"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getUnlList(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/unl", getUnlList);
$unlList = curl_bithomp("https://bithomp.com/api/v2/unl");
print $unlList;
The above command returns JSON structured like this:
{
"url": "https://vl.xrplf.org",
"version": 1,
"sequence": 2025011701,
"updatedAt": 1759751819,
"expiration": 1768694400,
"PublicKey": "ED45D1840EE724BE327ABE9146503D5848EFD5F38B6D5FEDE71E80ACCE5E6E738B",
"manifest": "JAAAAAFxIe1F0YQO5yS+Mnq+kUZQPVhI79Xzi21f7ecegKzOXm5zi3Mh7RiCXiUBmFIhZUbZfHHGCftCtcsPeSU01cwAt0hkhs0UdkAQnI9+pUYXskMF1Er1SPrem9zMEOxDx24aS+88WIgXpslXVyRPehFwtnTTb+LwUx7yUXoH3h31Qkruu2RZG70NcBJAy3pkPr9jhqyPvB7T4Nz8j/MjEaNa9ohMLztonxAAZDpcB+zX8QVvQ4GUiAePLCKF/fqTKfhUkSfobozPOi/bCQ==",
"signature": "5FD1AC7FE7CE66695E80C1757E8957DC2922701B3A6F5950C9DF59820A3F503C5A1FB8FEC7D90ED70D245DE0B12CE0C528D53143FFDCE9A1F8BAC3BB9E2C060E",
"validators": [
{
"PublicKey": "ED13AAFCB6A87BCB5D093C2EF37F04431C291126D674293305152D9776C6ABA4D6",
"sequence": 1,
"publicKey": "nHBWa56Vr7csoFcCnEPzCCKVvnDQw3L28mATgHYQMGtbEfUjuYyB",
"address": "r9Zwxiuv4GMLvEscjjuexTUsb8ttzJmUXV",
"addressDetails": {
"username": null,
"service": null
},
"domain": "xrp.vet"
},
{
"PublicKey": "ED4246AA3AE9D29863944800CCA91829E4447498A20CD9C3973A6B59346C75AB95",
"sequence": 1,
"publicKey": "nHBidG3pZK11zQD6kpNDoAhDxH6WLGui6ZxSbUx7LSqLHsgzMPec",
"address": "rnecUwtMPhRzbEv2LSvoVNFjyNLyKjo4Yy",
"addressDetails": {
"username": null,
"service": null
},
"domainLegacy": "bitso.com"
}
]
}
This endpoint returns the list of validators from the specific UNL (Unique Node List) used by Bithomp. The response also indicates which UNL source the data was retrieved from.
HTTP Request
GET https://bithomp.com/api/v2/unl
UNL Report
curl "https://xahauexplorer.com/api/v2/unl-report"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getUnlReport(json) {
console.log(json)
}
bithompRequest("https://xahauexplorer.com/api/v2/unl-report", getUnlReport);
$unlReport = curl_bithomp("https://xahauexplorer.com/api/v2/unl-report");
print $unlReport;
The above command returns JSON structured like this:
{
"ledgerEntry": "61E32E7A24A238F1C619D5F9DDCC41A94B33B66C0163F7EFCC8A19C9FD6F28DC",
"ledgerHash": "E45CF2A86AB426447D99FEB24E5EBE0CAF68ED6ACB503A781BC9FD346D55FF0C",
"ledgerIndex": 17592759,
"activeValidators": [
{
"account": "rD74dUPRFNfgnY2NzrxxYRXN4BrfGSN6Mv",
"accountDetails": {
"username": null,
"service": "XRPL-Labs"
},
"PublicKey": "ED02E3102D348B688CCDAF2D40FA9549E7C25EE926A15880E40D5BB0E2168A14DE",
"publicKey": "nHB45nBNgjKMssrRqaNVr2tpCq3t55J5APRRDD6ov1U41JfVFjr6"
},
{
"account": "rLHGUX9zeQMmVgZjMMymQEhFYJ2WyDS8E1",
"accountDetails": {
"username": null,
"service": "onledger.net"
},
"PublicKey": "ED0EA5543E538BE8C0D6A6E643678B5B3854BF423736E813502BEE6558BC0D5B1A",
"publicKey": "nHBTtSHyh8wweHqkWcVw16QYMA97n4voLFwfs7t7oSaTZmfPcmCz"
},
{
"account": "rwyypATD1dQxDbdQjMvrqnsHr2cQw5rjMh",
"accountDetails": {
"username": null,
"service": "Xahau Projects Table"
},
"PublicKey": "ED1369FC1E2A1D2B90FB05DBDF67054223638D585C00BE7B83FF42F082602E258B",
"publicKey": "nHBVzNWFu2yT373tTto5HT1Tybdq2GE8hsdhHdowUDdj9wBieNFo"
},
{
"account": "rN7XCq12KBvBLKad3wWsVUwmb3dNx1fx3e",
"accountDetails": {
"username": null,
"service": "Titanium"
},
"PublicKey": "ED1E88D64F134456B4BCBBC5554FDE292CCF8585DED2CAADAF83A499B4276BE312",
"publicKey": "nHB2tHvDXE2GM3Cp9ivyAXU3NDLkf8mzYREQkcZ7wFJyBiaVLu24"
}
],
}
This endpoint retrieves a report of the current UNL (Unique Node List) validators on XAHAU.
HTTP Request
GET https://xahauexplorer.com/api/v2/unl-report
Amendment
Get information about a specific amendment
curl "https://bithomp.com/api/v2/amendment/A730EB18A9D4BB52502C898589558B4CCEB4BE10044500EE5581137A2E80E849"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getAmendmentInfo(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/amendment/A730EB18A9D4BB52502C898589558B4CCEB4BE10044500EE5581137A2E80E849", getAmendmentInfo);
$amendmentInfo = curl_bithomp("https://bithomp.com/api/v2/amendment/A730EB18A9D4BB52502C898589558B4CCEB4BE10044500EE5581137A2E80E849");
print $amendmentInfo;
The above command returns JSON structured like this:
{
"amendment": "950AE2EA4654E47F04AA8739C0B214E242097E802FD372D24047A89AB1F5EC38",
"name": "MPTokensV1",
"enabled": true,
"introduced": "2.3.0",
"txHash": "14853FF2D09D198B576A531C50883C59D71474BA9072C1F5C0ED1DD57882B922",
"enabledAt": 1759324390,
"enabledLedgerIndex": 99226369
}
This endpoint retrieves information about a specific amendment. If activated returns the timestamp of actvation, ledger index when it was activated and the transaction hash. Make sure to use also /v2/features to get their voting status.
HTTP Request
GET https://bithomp.com/api/v2/amendment/<amendmentHash>
Features
Get the list of amendments and their voting status
curl "https://bithomp.com/api/v2/features"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getFeaturesList(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/features", getFeaturesList);
$featuresList = curl_bithomp("https://bithomp.com/api/v2/features
");
print $featuresList;
The above command returns JSON structured like this:
{
"result": {
"features": {
"0285B7E5E08E1A8E4C15636F0591D87F73CB6A7B6452A932AD72BBC8E5D1CBE3": {
"count": 0,
"enabled": false,
"name": "fixNFTokenDirV1",
"supported": true,
"threshold": 28,
"validations": 35,
"vetoed": "Obsolete"
},
"03BDC0099C4E14163ADA272C1B6F6FABB448CC3E51F522F978041E4B57D9158C": {
"enabled": true,
"name": "fixNFTokenReserve",
"supported": true
},
"138B968F25822EFBF54C00F97031221C47B1EAB8321D93C7C2AEAF85F04EC5DF": {
"count": 14,
"enabled": false,
"name": "TokenEscrow",
"supported": true,
"threshold": 28,
"validations": 35,
"vetoed": false
}
}
}
}
This endpoint retrieves the list of amendments and their voting status.
HTTP Request
GET https://bithomp.com/api/v2/features
Amendments
Get the list of amendments
curl "https://bithomp.com/api/v2/amendments"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getAmendmentsList(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/amendments", getAmendmentsList);
$amendmentsList = curl_bithomp("https://bithomp.com/api/v2/amendments");
print $amendmentsList;
The above command returns JSON structured like this:
[
{
"amendment": "AE6AB9028EEB7299EBB03C7CBCC3F2A4F5FBE00EA28B8223AA3118A0B436C1C5",
"name": "PermissionDelegation",
"enabled": false,
"introduced": "2.5.0"
},
{
"amendment": "D3456A862DC07E382827981CA02E21946E641877F19B8889031CC57FDCAC83E2",
"name": "fixPayChanCancelAfter",
"enabled": true,
"introduced": "2.5.0",
"txHash": "21842CFFCD51428997C78056F2EB9B707E2CED45FEFD302084B08C35965D7DB8",
"enabledAt": 1756479031,
"enabledLedgerIndex": 98491905
},
{
"amendment": "677E401A423E3708363A36BA8B3A7D019D21AC5ABD00387BDBEA6BDE4C91247E",
"name": "PermissionedDEX",
"enabled": false,
"introduced": "2.5.0"
},
{
"amendment": "B32752F7DCC41FB86534118FC4EEC8F56E7BD0A7DB60FD73F93F257233C08E3A",
"name": "fixEnforceNFTokenTrustlineV2",
"enabled": true,
"introduced": "2.5.0",
"txHash": "2532DC0E750FAA51CC11F58F742A1FB0CDC0F469DEA63EF903EC15D1E39667BE",
"enabledAt": 1756479031,
"enabledLedgerIndex": 98491905
}
}
This endpoint retrieves the list of amendments with the time of activation, if they are activated, ledgerIndex when they were activated and the transaction hash that activated them.
HTTP Request
GET https://bithomp.com/api/v2/amendments
Currency (HEX / XLS-14 NFT)
Currency
curl "https://bithomp.com/api/v2/currency/02C7004B041A91880000526964776F726C643836"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/currency/02C7004B041A91880000526964776F726C643836", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/currency/02C7004B041A91880000526964776F726C643836");
print $data;
The above command returns JSON structured like this:
{
"type": "nft",
"currencyCode": "02C7004B041A91880000526964776F726C643836",
"currency": "Ridworld86",
"cti": 56013842556817800,
"ctiLedger": 68850056,
"ctiTxIndex": 75,
"ctiValid": true,
"timestamp": 1641544270,
"ctiTx": {
"hash": "79C0E05CB9FC2B74F0B9716C15A6E2F924DBC8658931FD96AC8B158308A9886C",
"type": "payment",
"account": "rGpmRmU3Q5gyhhyWLWugkPX6SA8FyqXyE5",
"counterparty": null,
"destination": "r4VzEm7Jbgg3QkPBgMscoppz6JuzK2Jkbd",
"memos": [
{
"Memo": {
"MemoData": "526964776F726C6438362E205261726974793A2052617265204C6567656E642E20416D6F756E74206D696E7465643A2035383920756E6974732E20526964776F726C64C2AE20436F6C6C65637469626C65204E465420436172642047616D652E20496C6C7573747261746F723A205765622041727469737469632E",
"MemoFormat": "746578742F706C61696E",
"MemoType": "4465736372697074696F6E"
}
},
{
"Memo": {
"MemoData": "456E69676D61",
"MemoFormat": "746578742F706C61696E",
"MemoType": "417574686F72"
}
},
{
"Memo": {
"MemoData": "697066733A2F2F626166796265696779347869796C347A7062376C667474797832356E7A796E6F32647369766A777378657337376467336936356767796666637665",
"MemoFormat": "746578742F757269",
"MemoType": "5072696D617279557269"
}
}
]
},
"nft": {
"type": "xls14",
"description": "Ridworld86. Rarity: Rare Legend. Amount minted: 589 units. Ridworld® Collectible NFT Card Game. Illustrator: Web Artistic.",
"author": "Enigma",
"primaryUri": "ipfs://bafybeigy4xiyl4zpb7lfttyx25nzyno2dsivjwsxes77dg3i65ggyffcve",
"backupUri": null,
"image": null,
"data": null
}
}
This endpoint retrieves information for a requested currency (HEX or XLS-14 NFT).
HTTP Request
GET https://bithomp.com/api/v2/currency/<currency>
URL Parameters
| Parameter | Description |
|---|---|
| currency | A currency (HEX or XLS-14 NFT) |
Currencies
curl "https://bithomp.com/api/v2/currencies/?currencyList=02090001014A4E43454C53436F6E746573743031,02C7004B041A91880000526964776F726C643836,534F4C4F00000000000000000000000000000000"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getData(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/currencies/?currencyList=02090001014A4E43454C53436F6E746573743031,02C7004B041A91880000526964776F726C643836,534F4C4F00000000000000000000000000000000", getData);
$data = curl_bithomp("https://bithomp.com/api/v2/currencies/?currencyList=02090001014A4E43454C53436F6E746573743031,02C7004B041A91880000526964776F726C643836,534F4C4F00000000000000000000000000000000");
print $data;
The above command returns JSON structured like this:
{
"02090001014A4E43454C53436F6E746573743031": {
"type": "nft",
"currencyCode": "02090001014A4E43454C53436F6E746573743031",
"currency": "ELSContest01",
"cti": 2533279107010115,
"ctiLedger": 21646915,
"ctiTxIndex": 1,
"ctiValid": false,
"timestamp": 1465177060,
"ctiTx": {
"type": "orderCancellation",
"account": "r4aqu2zbAdX2QQ9bdeuGwifUMhtEeqx3pY",
"hash": "D06F5941FD8D1DFAD1A0E4B2BE227C19C0C49B6E6257B846A507E69F9AFB10AA"
},
"nft": {
"type": "xls14"
}
},
"02C7004B041A91880000526964776F726C643836": {
"type": "nft",
"currencyCode": "02C7004B041A91880000526964776F726C643836",
"currency": "Ridworld86",
"cti": 56013842556817800,
"ctiLedger": 68850056,
"ctiTxIndex": 75,
"ctiValid": true,
"timestamp": 1641544270,
"ctiTx": {
"hash": "79C0E05CB9FC2B74F0B9716C15A6E2F924DBC8658931FD96AC8B158308A9886C",
"type": "payment",
"account": "rGpmRmU3Q5gyhhyWLWugkPX6SA8FyqXyE5",
"counterparty": null,
"destination": "r4VzEm7Jbgg3QkPBgMscoppz6JuzK2Jkbd",
"memos": [
{
"Memo": {
"MemoData": "526964776F726C6438362E205261726974793A2052617265204C6567656E642E20416D6F756E74206D696E7465643A2035383920756E6974732E20526964776F726C64C2AE20436F6C6C65637469626C65204E465420436172642047616D652E20496C6C7573747261746F723A205765622041727469737469632E",
"MemoFormat": "746578742F706C61696E",
"MemoType": "4465736372697074696F6E"
}
},
{
"Memo": {
"MemoData": "456E69676D61",
"MemoFormat": "746578742F706C61696E",
"MemoType": "417574686F72"
}
},
{
"Memo": {
"MemoData": "697066733A2F2F626166796265696779347869796C347A7062376C667474797832356E7A796E6F32647369766A777378657337376467336936356767796666637665",
"MemoFormat": "746578742F757269",
"MemoType": "5072696D617279557269"
}
}
]
},
"nft": {
"type": "xls14",
"description": "Ridworld86. Rarity: Rare Legend. Amount minted: 589 units. Ridworld® Collectible NFT Card Game. Illustrator: Web Artistic.",
"author": "Enigma",
"primaryUri": "ipfs://bafybeigy4xiyl4zpb7lfttyx25nzyno2dsivjwsxes77dg3i65ggyffcve",
"backupUri": null,
"image": null,
"data": null
}
},
"534F4C4F00000000000000000000000000000000": {
"type": "hex",
"currencyCode": "534F4C4F00000000000000000000000000000000",
"currency": "SOLO"
}
}
This endpoint retrieves information for a requested currencies (HEX or XLS-14 NFT).
HTTP Request
GET https://bithomp.com/api/v2/currencies
Query Parameters
| Parameter | Description |
|---|---|
| currencyList | A list of currencies separated by comma (HEX or XLS-14 NFT) |
Tokens
List of tokens
curl "https://bithomp.com/api/v2/trustlines/tokens?statistics=true&convertCurrencies=usd¤cyDetails=trueens&limit=100&order=rating"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getTokens(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/trustlines/tokens?statistics=true&convertCurrencies=usd¤cyDetails=true&limit=100&order=rating", getTokens);
$data = curl_bithomp("https://bithomp.com/api/v2/trustlines/tokens?statistics=true&convertCurrencies=usd¤cyDetails=true&limit=100&order=rating");
print $data;
The above command returns JSON structured like this:
{
"statistics": true,
"order": "rating",
"limit": 100,
"convertCurrencies": ["usd"],
"tokens": [
{
"token": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De:524C555344000000000000000000000000000000",
"issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"issuerDetails": {
"address": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"username": null,
"service": "Ripple"
},
"currency": "524C555344000000000000000000000000000000",
"supply": "91205633.29000041500942040640676754",
"icon": "https://cdn.bithomp.com/issued-token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000000",
"name": null,
"description": null,
"kyc": true,
"stablecoin": true,
"fiat": null,
"lp_token": false,
"trustlines": 70378,
"holders": 35845,
"rating": 7588,
"statistics": {
"sellVolume": "2559998.281041563219960605",
"buyVolume": "2909331.58844742357001378",
"uniqueSellers": 276,
"uniqueBuyers": 349,
"dexes": 30596,
"dexTxs": 24380,
"mintVolume": "0.00000005384867842707418252",
"burnVolume": "0.00000005201549328379207252",
"transferVolume": "113074.177268406715559549906128",
"ripplingVolume": null,
"mintTxs": 6853,
"burnTxs": 6691,
"transferTxs": 2745,
"ripplingTxs": 0,
"uniqueAccounts": 639,
"uniqueDexAccounts": 549,
"priceNativeCurrency": "0.33207696941626107529",
"priceNativeCurrency5m": "0.33203679451325939562",
"priceNativeCurrency1h": "0.33121454112696236815",
"priceNativeCurrency24h": "0.3346832999999999788",
"priceNativeCurrency7d": "0.35642084631372751024",
"priceNativeCurrencySpot": "0.332076975442907666",
"priceFiats": {
"usd": "1.0022"
},
"priceFiats5m": {
"usd": "1.0021"
},
"priceFiats1h": {
"usd": "1.0016"
},
"priceFiats24h": {
"usd": "1.0006"
},
"priceFiats7d": {
"usd": "0.9999"
},
"priceFiatsSpot": {
"usd": "1.0022"
},
"priceXrp": "0.33207696941626107529",
"priceXrp5m": "0.33203679451325939562",
"priceXrp1h": "0.33121454112696236815",
"priceXrp24h": "0.3346832999999999788",
"priceXrp7d": "0.35642084631372751024",
"priceXrpSpot": "0.332076975442907666",
"marketcap": "30287290.2966341908108714281626751396213361213334680866",
"ammPools": 193,
"activeAmmPools": 155,
"activeOffers": 6494,
"activeCounters": 161,
"activeHolders": 513,
"timeAt": 1759661820
},
"currencyDetails": {
"type": "hex",
"currencyCode": "524C555344000000000000000000000000000000",
"currency": "RLUSD"
}
},
{
"token": "rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz:534F4C4F00000000000000000000000000000000",
"issuer": "rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz",
"issuerDetails": {
"address": "rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz",
"username": "SOLO",
"service": "Sologenic"
},
"currency": "534F4C4F00000000000000000000000000000000",
"supply": "398768200.20251005116568414094586974000000",
"icon": "https://cdn.bithomp.com/issued-token/rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz/534F4C4F00000000000000000000000000000000",
"name": null,
"description": null,
"kyc": true,
"stablecoin": false,
"fiat": null,
"lp_token": false,
"trustlines": 284167,
"holders": 218078,
"rating": 7320,
"statistics": {
"sellVolume": "469023.46826343251002545",
"buyVolume": "336675.91292410508884761",
"uniqueSellers": 89,
"uniqueBuyers": 157,
"dexes": 9173,
"dexTxs": 8207,
"mintVolume": "0.000000003100990897524644",
"burnVolume": "210.380176619209595020784644",
"transferVolume": "1151310.79826388428162843674",
"ripplingVolume": null,
"mintTxs": 63,
"burnTxs": 8705,
"transferTxs": 1048,
"ripplingTxs": 0,
"uniqueAccounts": 739,
"uniqueDexAccounts": 236,
"priceNativeCurrency": "0.08099099979844644125",
"priceNativeCurrency5m": "0.08099099979844644125",
"priceNativeCurrency1h": "0.08232500286447528042",
"priceNativeCurrency24h": "0.08848400004622194564",
"priceNativeCurrency7d": "0.09921600012464674909",
"priceNativeCurrencySpot": "0.08080000000002883203",
"priceFiats": {
"usd": "0.2446"
},
"priceFiats5m": {
"usd": "0.2446"
},
"priceFiats1h": {
"usd": "0.2489"
},
"priceFiats24h": {
"usd": "0.2645"
},
"priceFiats7d": {
"usd": "0.2783"
},
"priceFiatsSpot": {
"usd": "0.244"
},
"priceXrp": "0.08099099979844644125",
"priceXrp5m": "0.08099099979844644125",
"priceXrp1h": "0.08232500286447528042",
"priceXrp24h": "0.08848400004622194564",
"priceXrp7d": "0.09921600012464674909",
"priceXrpSpot": "0.08080000000002883203",
"marketcap": "32296635.222228341686811552764258711626263362789062775",
"ammPools": 65,
"activeAmmPools": 54,
"activeOffers": 362,
"activeCounters": 54,
"activeHolders": 670,
"timeAt": 1759661400
},
"currencyDetails": {
"type": "hex",
"currencyCode": "534F4C4F00000000000000000000000000000000",
"currency": "SOLO"
}
}
]
}
This endpoint retrieves a list of tokens (IOUs) on the Ledger.
HTTP Request
GET https://bithomp.com/api/v2/trustlines/tokens
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| convertCurrencies | null | (Only available on paid API plans) A single currency code to convert the token price into. Supported currencies: usd, eur, jpy, gbp, aud, cad, chf, cny, hkd, nzd, sek, krw, sgd, nok, mxn, inr, rub, zar, try, brl, twd, dkk, pln, thb, idr, huf, czk, ils, clp, php, aed, sar, myr, ars, bdt, bhd, kwd, ngn, uah, vnd. Example: convertCurrencies=usd |
| statistics | false | (Only available on Standard plan and higher) If set to true, the response will include additional statistics for each token, such as active holders, sell and buy volume, unique sellers and buyers, DEXes, DEX transactions, mint and burn volumes, transfer volumes, rippling volumes, mint and burn transactions, transfer transactions, unique accounts, unique DEX accounts, price in XRP, and market cap. |
| order | rating | The order of the tokens in the response. Can be rating, trustlinesHigh, holdersHigh, sellVolumeHigh, buyVolumeHigh, totalVolumeHigh, uniqueTradersHigh, uniqueSellersHigh, uniqueBuyersHigh, marketCapHigh, priceNativeCurrencyHigh, priceNativeCurrencyLow. |
| issuer | null | If set, the response will only include tokens issued by the specified issuer address. |
| currency | null | If set, the response will only include tokens with the specified currency code. |
| lptokens | true | If set to false, the response will exclude LP tokens. By default, LP tokens are included in the response. |
| currencyDetails | false | If set to true, the response will include additional details for each currency, usefull to get address details (usernames, service names) for each issuer of the currency and for LP token details. NOTE: This will change the response structure! |
| limit | 100 | The maximum number of tokens to return in the response. (More than 100 is available for the Standard plan and higher). |
| marker | null | (only available on paid api plans) The marker to use for pagination. If set, the response will include tokens starting from the specified marker. The marker is a string that can be used to retrieve the next page of results. |
Token
curl "https://bithomp.com/api/v2/trustlines/token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000000?statistics=true&convertCurrencies=usd"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getTokenInfo(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/trustlines/token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000?statistics=true&convertCurrencies=usd", getTokenInfo);
$data = curl_bithomp("https://bithomp.com/api/v2/trustlines/token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000?statistics=true&convertCurrencies=usd");
print $data;
The above command returns JSON structured like this:
{
"token": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De:524C555344000000000000000000000000000000",
"issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"issuerDetails": {
"address": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"username": null,
"service": "Ripple"
},
"currency": "524C555344000000000000000000000000000000",
"supply": "65905296.29000036796640958939465754",
"icon": "https://cdn.bithomp.com/issued-token/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000000",
"name": null,
"description": null,
"kyc": false,
"stablecoin": false,
"fiat": null,
"lp_token": false,
"trustlines": 65222,
"holders": 34739,
"rating": 7845,
"statistics": {
"sellVolume": "4579811.737474424591756848",
"buyVolume": "2989058.23338657597050277369",
"uniqueSellers": 301,
"uniqueBuyers": 536,
"dexes": 49201,
"dexTxs": 39620,
"mintVolume": "0.0000001738428431483099408",
"burnVolume": "0.0000001607635086192399408",
"transferVolume": "2331899.0438317189968043296351948",
"ripplingVolume": null,
"mintTxs": 12259,
"burnTxs": 12295,
"transferTxs": 5305,
"ripplingTxs": 0,
"uniqueAccounts": 816,
"uniqueDexAccounts": 748,
"priceNativeCurrency": "0.3008469570097322523",
"priceNativeCurrency5m": "0.30149723527035257087",
"priceNativeCurrency1h": "0.29871344120871406851",
"priceNativeCurrency24h": "0.33347950851790034632",
"priceNativeCurrency7d": "0.33071620369230287599",
"priceNativeCurrencySpot": "0.30060532893893183832",
"priceFiats": {usd: '0.9988'},
"priceFiats1h": {usd: '0.998'},
"priceFiats5m": {usd: '0.9977'},
"priceFiats7d": {usd: '1.0002'},
"priceFiats24h": {usd: '0.997'},
"priceFiatsSpot": {usd: '0.9989'},
"marketcap": "19827407.839671407202975140733144129015233991451377342",
"ammPools": 174,
"activeAmmPools": 152,
"activeOffers": 9306,
"activeCounters": 163,
"activeHolders": 587,
"timeAt": 1754632979
}
}
This endpoint retrieves information and statistics for a specific token (IOU) on the Ledger.
HTTP Request
GET https://bithomp.com/api/v2/trustlines/token/<issuer>/<currency>
URL Parameters
| Parameter | Description |
|---|---|
| issuer | The issuer address of the Token. |
| currency | The currency code of the Token. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| convertCurrencies | null | (Only available on paid API plans) A single currency code to convert the token price into. Supported currencies: usd, eur, jpy, gbp, aud, cad, chf, cny, hkd, nzd, sek, krw, sgd, nok, mxn, inr, rub, zar, try, brl, twd, dkk, pln, thb, idr, huf, czk, ils, clp, php, aed, sar, myr, ars, bdt, bhd, kwd, ngn, uah, vnd. Example: convertCurrencies=usd |
| statistics | false | (Only available on paid API plans) If set to true, the response will include additional statistics for the token, such as sell and buy volume, unique sellers and buyers, DEXes, DEX transactions, mint and burn volumes, transfer volumes, rippling volumes, mint and burn transactions, transfer transactions, unique accounts, unique DEX accounts, price in XRP, market cap, AMM pools, active AMM pools, active offers, active counters, active holders. Also it will include timeAt which is a timestamp when the statistics were last updated. |
Token Holders
curl "https://bithomp.com/api/cors/v2/trustlines/token/richlist/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000000?summary=true&convertCurrencies=usd"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getTokenHolders(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/cors/v2/trustlines/token/richlist/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000000?summary=true&convertCurrencies=usd", getTokenHolders);
$data = curl_bithomp("https://bithomp.com/api/cors/v2/trustlines/token/richlist/rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De/524C555344000000000000000000000000000?summary=true&convertCurrencies=usd");
print $data;
The above command returns JSON structured like this:
{
"summary": {
"totalCoins": "91205633.29000043557475745390065754",
"holders": 35891,
"trustlines": 70622,
"priceNativeCurrencySpot": "0.34852191854345719802",
"convertCurrencies": {
"usd": "1.000135923548231948298093"
}
},
"issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"issuerDetails": {
"address": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"username": null,
"service": "Ripple"
},
"currency": "524C555344000000000000000000000000000000",
"trustlines": [
{
"trustlineID": "2778EE6C134B42B896A0DB3E48C69FF6B3519E8D179BF9BFBBDA4F3221D32A6C",
"counterparty": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"currency": "524C555344000000000000000000000000000000",
"address": "rLWQgSxFdo4SSsH2hLqVyQ1VqdEX2rPXHX",
"addressDetails": {
"address": "rLWQgSxFdo4SSsH2hLqVyQ1VqdEX2rPXHX",
"username": null,
"service": null
},
"balance": "30000000.001",
"limit": "9999999999999999",
"reserve": true,
"amm": false,
"ripplingDisabled": true,
"authorized": false,
"freeze": false
},
{
"trustlineID": "C92D9A0604EB672A349910D8BBC2E3F6228E551DC50AF8806E364F71CDF67966",
"counterparty": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"currency": "524C555344000000000000000000000000000000",
"address": "r3oSpUhBuiEw4jqtmNrCAeUNoS4cH1TwhC",
"addressDetails": {
"address": "r3oSpUhBuiEw4jqtmNrCAeUNoS4cH1TwhC",
"username": null,
"service": null
},
"balance": "14412789",
"limit": "999999999999999900000000000000000000000000000000000000000000000000000000000000000000000000000000",
"reserve": true,
"amm": false,
"ripplingDisabled": true,
"authorized": false,
"freeze": false
}
]
}
This endpoint retrieves a list of holders for a specific token (IOU) on the Ledger.
Page where it used on bithomp:
https://bithomp.com/en/distribution.
HTTP Request
GET https://bithomp.com/api/v2/trustlines/token/richlist/<issuer>/<currency>
URL Parameters
| Parameter | Description |
|---|---|
| issuer | The issuer address of the Token. |
| currency | The currency code of the Token. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| summary | false | If set to true, the response will include a summary of the token, including total coins, number of holders, number of trustlines, and the current price in XRP/XAH and converted currencies. |
| currencyDetails | false | If set to true, the response will include additional details for the currency, usefull for LP token details. |
| convertCurrencies | null | (Only available on paid API plans) A single currency code to convert the token price into. Supported currencies: usd, eur, jpy, gbp, aud, cad, chf, cny, hkd, nzd, sek, krw, sgd, nok, mxn, inr, rub, zar, try, brl, twd, dkk, pln, thb, idr, huf, czk, ils, clp, php, aed, sar, myr, ars, bdt, bhd, kwd, ngn, uah, vnd. Example: convertCurrencies=usd |
| limit | 100 | The maximum number of holders to return in the response. (More than 100 is available for the Standard plan and higher). |
| marker | null | (only available on paid api plans) The marker to use for pagination. If set, the response will include holders starting from the specified marker. The marker is a string that can be used to retrieve the next page of results. |
Token Search
curl "https://bithomp.com/api/v2/trustlines/tokens/search/RLU"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function searchTokens(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/trustlines/tokens/search/RLU", searchTokens);
$data = curl_bithomp("https://bithomp.com/api/v2/trustlines/tokens/search/RLU");
print $data;
The above command returns JSON structured like this:
{
"tokens": [
{
"token": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De:524C555344000000000000000000000000000000",
"issuer": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"issuerDetails": {
"address": "rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De",
"username": null,
"service": "Ripple"
},
"currency": "524C555344000000000000000000000000000000",
"supply": "65905296.29000021766444040647765754",
"name": null,
"description": null,
"icon": null,
"kyc": false,
"stablecoin": false,
"lp_token": false,
"trustlines": 62683,
"holders": 33945,
"rating": 7969
},
{
"token": "rLUR2xrdeP77xUKW3S93jaA8k5h4JAwkix:4241504553000000000000000000000000000000",
"issuer": "rLUR2xrdeP77xUKW3S93jaA8k5h4JAwkix",
"issuerDetails": {
"address": "rLUR2xrdeP77xUKW3S93jaA8k5h4JAwkix",
"username": null,
"service": null
},
"currency": "4241504553000000000000000000000000000000",
"supply": "964897792.8454757196876",
"name": "Bearded Ape Society",
"description": "Bearded Ape Society is a next-gen Token & NFT collection living on the XRP Ledger. The Bearded Ape Society isnt about hype its about building a gritty, creative, and value-driven NFT tribe on XRPL. Whether youre here for the art, the alpha, or just a damn good-looking ape youre home now.",
"icon": "QmNfcRRJ3DpueMERrZNhreZR56jmnY3LcKV46oAFiKA6oW",
"kyc": false,
"stablecoin": false,
"lp_token": false,
"trustlines": 313,
"holders": 159,
"rating": 3444
}
]
}
This endpoint searches for tokens (IOUs) on the Ledger by a given item or a part of it (issuer, currency, username, etc.).
HTTP Request
GET https://bithomp.com/api/v2/trustlines/tokens/search/<item>
URL Parameters
| Parameter | Description |
|---|---|
| item | The item to search for. It can be part of an issuer address, currency code, or a username, or a full issuer address, currency, currency code, or a username, service name. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| lptokens | true | If set to false, the response will exclude LP tokens. By default, LP tokens are included in the response. |
| currencyDetails | false | If set to true, the response will include additional details for each currency, usefull to get address details (usernames, service names) for each issuer of the currency and for LP token details. NOTE: This will change the response structure! |
Token Issuer Search
curl "https://bithomp.com/api/v2/trustlines/issuers/search/rMx"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function searchIssuers(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/trustlines/issuers/search/rMx", searchIssuers);
$data = curl_bithomp("https://bithomp.com/api/v2/trustlines/issuers/search/rMx");
print $data;
The above command returns JSON structured like this:
{
"issuers": [
{
"address": "rMxZjeMsHSFh7MfzEa8ZZNihW9vZVPo81v",
"username": null,
"service": null,
"verifiedDomain": "rmxzjemshsfh7mfzea8zznihw9vzvpo81v.toml.ledger.meme",
"balance": "1000000"
},
{
"address": "rNiPdZ1fPkwCQKqYE3h3NmRN8B4geiZcsA",
"username": null,
"service": null,
"verifiedDomain": "hfwkjmrmxxqqsqd2mtgm.toml.firstledger.net",
"balance": "1019931"
}
]
}
This endpoint searches for token issuers on the Ledger by a given item or a part of it (issuer address, username, service name, domain etc.).
HTTP Request
GET https://bithomp.com/api/v2/trustlines/issuers/search/<item>
URL Parameters
| Parameter | Description |
|---|---|
| item | The item to search for. It can be part of an issuer address, username, service name, domain, or a full issuer address, username, service name, domain. |
Currency Search
curl "https://bithomp.com/api/v2/trustlines/currencies/search/RLU"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function searchCurrencies(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/trustlines/currencies/search/RLU", searchCurrencies);
$data = curl_bithomp("https://bithomp.com/api/v2/trustlines/currencies/search/RLU");
print $data;
The above command returns JSON structured like this:
{
"currencies": [
"524C555344000000000000000000000000000000",
"03B245BE580EC4F4386A751C084489EC4B514A2F",
"03BE21EF9C4931D8212D7CB96A93ECB144ABD3A3"
]
}
This endpoint searches for currencies (HEX or 3-characters) on the Ledger by a given name or a part of it (currency code, currency name.).
HTTP Request
GET https://bithomp.com/api/v2/trustlines/currencies/search/<item>
URL Parameters
| Parameter | Description |
|---|---|
| item | The item to search for. It can be part of a currency code, currency name, or a full currency code, currency name. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| currencyDetails | false | If set to true, the response will include additional details for each currency, usefull to get address details (usernames, service names) for each issuer of the currency and for LP token details. NOTE: This will change the response structure! |
Multi Purpose Token
List of MPTs
curl "https://bithomp.com/api/v2/mptokens"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function listMPTokens(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/mptokens", listMPTokens);
$data = curl_bithomp("https://bithomp.com/api/v2/mptokens");
print $data;
The above command returns JSON structured like this:
{
"order": "rating",
"issuances": [
{
"objectID": "43C88DE501AF7E1B9BAA25BFD5ECB5E73054CDDBE9893D54D44AD8AAADC74EBC",
"mptokenIssuanceID": "056762A93087A14B122055FA030F9EE6F74F87116559C83D",
"createdAt": 1759779190,
"updatedAt": 1759779190,
"lastUsedAt": 1759779190,
"issuer": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"issuerDetails": {
"address": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"username": null,
"service": null
},
"sequence": 90661545,
"currency": "Precious MPT - undefined",
"icon": "https://cdn.bithomp.com/mptoken/056762A93087A14B122055FA030F9EE6F74F87116559C83D",
"metadata": {
"name": "Precious MPT - undefined",
"weblinks": [],
"description": "Metaprotocol Token representing precious metals portfolio for customer undefined",
"purchase_id": "29089"
},
"scale": 2,
"transferFee": null,
"maximumAmount": "50000000",
"outstandingAmount": "0",
"lockedAmount": "0",
"flags": {
"locked": false,
"canLock": false,
"requireAuth": false,
"canEscrow": false,
"canTrade": false,
"canTransfer": false,
"canClawback": false
},
"description": "Metaprotocol Token representing precious metals portfolio for customer undefined",
"kyc": false,
"stablecoin": false,
"fiat": null,
"mptokens": 0,
"holders": 0,
"rating": 0
}
]
}
This endpoint retrieves a list of Multi Purpose Tokens (MPT) on the Ledger.
HTTP Request
GET https://bithomp.com/api/v2/mptokens
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| order | rating | The order of the MPTs in the response. Can be rating, holdersHigh,createdAtNew, createdAtOld, mptokensHigh. mptokensHigh - how many users created MPT objects in order to hold the MPT. |
| limit | 100 | The maximum number of MPTs to return in the response |
| issuer | null | If set, the response will only include MPTs issued by the specified issuer address. |
| currency | null | If set, the response will only include MPTs with the specified currency code. |
| marker | null | (only available on paid api plans) The marker to use for pagination. If set, the response will include MPTs starting from the specified marker. The marker is a string that can be used to retrieve the next page of results. |
MP Token
curl "https://bithomp.com/api/cors/v2/mptoken/056762A93087A14B122055FA030F9EE6F74F87116559C83D"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function getMPTokenInfo(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/cors/v2/mptoken/056762A93087A14B122055FA030F9EE6F74F87116559C83D", getMPTokenInfo);
$data = curl_bithomp("https://bithomp.com/api/cors/v2/mptoken/056762A93087A14B122055FA030F9EE6F74F87116559C83D");
print $data;
The above command returns JSON structured like this:
{
"objectID": "43C88DE501AF7E1B9BAA25BFD5ECB5E73054CDDBE9893D54D44AD8AAADC74EBC",
"mptokenIssuanceID": "056762A93087A14B122055FA030F9EE6F74F87116559C83D",
"createdAt": 1759779190,
"updatedAt": 1759779190,
"lastUsedAt": 1759779190,
"issuer": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"issuerDetails": {
"address": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"username": null,
"service": null
},
"sequence": 90661545,
"currency": "Precious MPT - undefined",
"icon": "https://cdn.bithomp.com/mptoken/056762A93087A14B122055FA030F9EE6F74F87116559C83D",
"metadata": {
"name": "Precious MPT - undefined",
"weblinks": [],
"description": "Metaprotocol Token representing precious metals portfolio for customer undefined",
"purchase_id": "29089"
},
"scale": 2,
"transferFee": null,
"maximumAmount": "50000000",
"outstandingAmount": "0",
"lockedAmount": "0",
"flags": {
"locked": false,
"canLock": false,
"requireAuth": false,
"canEscrow": false,
"canTrade": false,
"canTransfer": false,
"canClawback": false
},
"description": "Metaprotocol Token representing precious metals portfolio for customer undefined",
"kyc": false,
"stablecoin": false,
"fiat": null,
"mptokens": 0,
"holders": 0,
"rating": 0
}
This endpoint retrieves information for a specific Multi Purpose Token (MPT) on the Ledger.
HTTP Request
GET https://bithomp.com/api/v2/mptoken/<mptokenIssuanceID>
URL Parameters
| Parameter | Description |
|---|---|
| mptokenIssuanceID | The issuance ID of the MPT. |
MP Token Search
curl "https://bithomp.com/api/v2/mptokens/search/Precious"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function searchMPTokens(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/mptokens/search/Precious", searchMPTokens);
$data = curl_bithomp("https://bithomp.com/api/v2/mptokens/search/Precious");
print $data;
The above command returns JSON structured like this:
{
"issuances": [
{
"objectID": "43C88DE501AF7E1B9BAA25BFD5ECB5E73054CDDBE9893D54D44AD8AAADC74EBC",
"mptokenIssuanceID": "056762A93087A14B122055FA030F9EE6F74F87116559C83D",
"createdAt": 1759779190,
"updatedAt": 1759779190,
"lastUsedAt": 1759779190,
"issuer": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"issuerDetails": {
"address": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"username": null,
"service": null
},
"sequence": 90661545,
"currency": "Precious MPT - undefined",
"icon": "https://cdn.bithomp.com/mptoken/056762A93087A14B122055FA030F9EE6F74F87116559C83D",
"metadata": {
"name": "Precious MPT - undefined",
"weblinks": [],
"description": "Metaprotocol Token representing precious metals portfolio for customer undefined",
"purchase_id": "29089"
},
"scale": 2,
"transferFee": null,
"maximumAmount": "50000000",
"outstandingAmount": "0",
"lockedAmount": "0",
"flags": {
"locked": false,
"canLock": false,
"requireAuth": false,
"canEscrow": false,
"canTrade": false,
"canTransfer": false,
"canClawback": false
},
"description": "Metaprotocol Token representing precious metals portfolio for customer undefined",
"kyc": false,
"stablecoin": false,
"fiat": null,
"mptokens": 0,
"holders": 0,
"rating": 0
}
]
}
This endpoint searches for Multi Purpose Tokens (MPT) on the Ledger by a given item or a part of it (currency code, currency name, issuer address, username, service name, domain etc.).
HTTP Request
GET https://bithomp.com/api/v2/mptokens/search/<item>
URL Parameters
| Parameter | Description |
|---|---|
| item | The item to search for. It can be part of a currency code, currency name, issuer address, username, service name, domain, or a full currency code, currency name, issuer address, username, service name, domain. |
MP Token Issuer search
curl "https://bithomp.com/api/v2/mptokens/issuers/search/rnR"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function searchMPTokenIssuers(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/mptokens/issuers/search/rnR", searchMPTokenIssuers);
$data = curl_bithomp("https://bithomp.com/api/v2/mptokens/issuers/search/rnR");
print $data;
The above command returns JSON structured like this:
{
"issuers": [
{
"address": "rnRbuxseqEHbxXgaBZJu7PAMQKmVAqp9RM",
"username": null,
"service": null,
"verifiedDomain": null,
"balance": "11458365"
}
]
}
This endpoint searches for Multi Purpose Token (MPT) issuers on the Ledger by a given item or a part of it (issuer address, username, service name, domain etc.).
HTTP Request
GET https://bithomp.com/api/v2/mptokens/issuers/search/<item>
URL Parameters
| Parameter | Description |
|---|---|
| item | The item to search for. It can be part of an issuer address, username, service name, domain, or a full issuer address, username, service name, domain. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| limit | 100 | The maximum number of issuers to return in the response. (More than 100 is available for the Standard plan and higher). |
MP Token Currency search
curl "https://bithomp.com/api/v2/mptokens/currencies/search/Precious"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function searchMPTCurrencies(json) {
console.log(json)
}
bithompRequest("https://bithomp.com/api/v2/mptokens/currencies/search/Precious", searchMPTCurrencies);
$data = curl_bithomp("https://bithomp.com/api/v2/mptokens/currencies/search/Precious");
print $data;
The above command returns JSON structured like this:
{
"currencies": [
{
"currency": "Precious MPT - undefined"
}
]
}
This endpoint searches for Multi Purpose Token (MPT) currencies on the Ledger by a given name or a part of it (currency code, currency name.).
HTTP Request
GET https://bithomp.com/api/v2/mptokens/currencies/search/<item>
URL Parameters
| Parameter | Description |
|---|---|
| item | The item to search for. It can be part of a currency code, currency name, or a full currency code, currency name. |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| limit | 100 | The maximum number of issuers to return in the response. (More than 100 is available for the Standard plan and higher). |
Transaction
Tx Details
curl "https://bithomp.com/api/v2/transaction/277EE666435B4A5AB50FA7391E9D202D74EB29AEE56BA8E9D82E631BFD31F41F"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transaction/277EE666435B4A5AB50FA7391E9D202D74EB29AEE56BA8E9D82E631BFD31F41F", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transaction/277EE666435B4A5AB50FA7391E9D202D74EB29AEE56BA8E9D82E631BFD31F41F");
print $data;
The above command returns JSON structured like this:
{
"type": "ammWithdraw",
"address": "raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J",
"sequence": 86780513,
"id": "277EE666435B4A5AB50FA7391E9D202D74EB29AEE56BA8E9D82E631BFD31F41F",
"ctid": "C547FB7700000000",
"specification": {
"source": {
"address": "raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J",
"tag": 24546893
},
"asset": {
"currency": "4252414400000000000000000000000000000000",
"counterparty": "rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR"
},
"asset2": {
"currency": "XRP"
},
"flags": {
"lpToken": false,
"withdrawAll": true,
"oneAssetWithdrawAll": false,
"singleAsset": false,
"twoAsset": false,
"oneAssetLPToken": false,
"limitLPToken": false
}
},
"outcome": {
"result": "tesSUCCESS",
"timestamp": "2024-06-10T23:26:32.000Z",
"fee": "0.000012",
"balanceChanges": {
"rNkJATb3PcVggEUcntMwt6b3662M1p44u3": [
{
"currency": "XRP",
"value": "-6.405052"
},
{
"counterparty": "raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J",
"currency": "0369BC054184BA4C655E4197B570C2AA25AFA8E4",
"value": "3975740.88133"
},
{
"counterparty": "rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR",
"currency": "4252414400000000000000000000000000000000",
"value": "-6537178.8337"
}
],
"raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J": [
{
"counterparty": "rNkJATb3PcVggEUcntMwt6b3662M1p44u3",
"currency": "0369BC054184BA4C655E4197B570C2AA25AFA8E4",
"value": "-3975740.88133"
},
{
"counterparty": "rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR",
"currency": "4252414400000000000000000000000000000000",
"value": "6537178.833695069"
},
{
"currency": "XRP",
"value": "6.40504"
}
],
"rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR": [
{
"counterparty": "raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J",
"currency": "4252414400000000000000000000000000000000",
"value": "-6537178.833695069"
},
{
"counterparty": "rNkJATb3PcVggEUcntMwt6b3662M1p44u3",
"currency": "4252414400000000000000000000000000000000",
"value": "6537178.8337"
}
]
},
"ammChanges": {
"status": "modified",
"ammID": "A513513E3A227FE3A7920740EC8A336C68A166881930E455E16F28EED794D867",
"account": "rNkJATb3PcVggEUcntMwt6b3662M1p44u3",
"asset": {
"currency": "XRP"
},
"asset2": {
"currency": "4252414400000000000000000000000000000000",
"counterparty": "rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR"
},
"auctionSlot": {
"account": "rEPR5XZjXDUMy65K5qUMgGFVqqo8CiA8AU",
"discountedFee": 39,
"expiration": 1712919252,
"price": {
"currency": "0369BC054184BA4C655E4197B570C2AA25AFA8E4",
"issuer": "rNkJATb3PcVggEUcntMwt6b3662M1p44u3",
"value": "10000000"
}
},
"lpTokenBalance": {
"currency": "0369BC054184BA4C655E4197B570C2AA25AFA8E4",
"value": "27151566861.22734",
"counterparty": "rNkJATb3PcVggEUcntMwt6b3662M1p44u3"
},
"tradingFee": 392,
"ownerNode": "0",
"voteSlots": [
{
"account": "rs4HULUYNcbwCmH4KokAk7pus6wRpgtfmg",
"tradingFee": 750,
"voteWeight": 6411
},
{
"account": "r9eVykdjG58vsFk99GQozRbE7LTovFG6Py",
"tradingFee": 1000,
"voteWeight": 636
},
{
"account": "rH9ZRJDe1dbrJY78gXpZWbhkqz94byf2Ab",
"tradingFee": 8,
"voteWeight": 9129
},
{
"account": "rwQbT25TA3NEvTAHFxmfEZkMUfQ7tYJ7T6",
"tradingFee": 330,
"voteWeight": 0
},
{
"account": "rpNmRsusXxqJoaDny4B3nVTqwkE1xDEDGt",
"tradingFee": 1000,
"voteWeight": 531
},
{
"account": "r9dRhoGsmBStn3qdTq3mYychrFYneR6wn5",
"tradingFee": 850,
"voteWeight": 1099
},
{
"account": "rp6Ak4Z5X6HcQZpuEWHJ7esuXHcwraFFAU",
"tradingFee": 375,
"voteWeight": 365
}
],
"lpTokenBalanceChange": {
"currency": "0369BC054184BA4C655E4197B570C2AA25AFA8E4",
"counterparty": "rNkJATb3PcVggEUcntMwt6b3662M1p44u3",
"value": "-3975740.88133"
}
},
"ledgerVersion": 88603511,
"indexInLedger": 0
},
"rawTransaction": "{\"Account\":\"raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J\",\"Asset\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR\"},\"Asset2\":{\"currency\":\"XRP\"},\"Fee\":\"12\",\"Flags\":131072,\"LastLedgerSequence\":88603519,\"Sequence\":86780513,\"SigningPubKey\":\"03C351BAA176A52F2533C78F32FFE9C0F8C2797465752B1814BC80C0CA5C478262\",\"SourceTag\":24546893,\"TransactionType\":\"AMMWithdraw\",\"TxnSignature\":\"304402207CA0A9B2C82298727D8B988592B5CBBB8F7FD9F59A7F085E08A6BD7C8F6821D50220750024405B3BA37A810FEDE5F97667F20E2042D5705869D23CFEC9DBA3F54D51\",\"hash\":\"277EE666435B4A5AB50FA7391E9D202D74EB29AEE56BA8E9D82E631BFD31F41F\",\"ctid\":\"C547FB7700000000\",\"meta\":{\"AffectedNodes\":[{\"ModifiedNode\":{\"FinalFields\":{\"AMMID\":\"A513513E3A227FE3A7920740EC8A336C68A166881930E455E16F28EED794D867\",\"Account\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"Balance\":\"43742087143\",\"Flags\":26214400,\"OwnerCount\":1,\"Sequence\":86795583},\"LedgerEntryType\":\"AccountRoot\",\"LedgerIndex\":\"38C2F23C15911AEB239A8FD27DC1022F6CFEAC5B58AAE825EF738CBB1A1A244D\",\"PreviousFields\":{\"Balance\":\"43748492195\"},\"PreviousTxnID\":\"1DF6D18DC3BE6C63ABAF2236A9B68E807A7E13C0EEF4F82886C8912B72815EB4\",\"PreviousTxnLgrSeq\":88602916}},{\"ModifiedNode\":{\"FinalFields\":{\"Balance\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"rrrrrrrrrrrrrrrrrrrrBZbvji\",\"value\":\"0\"},\"Flags\":1114112,\"HighLimit\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"value\":\"0\"},\"HighNode\":\"6\",\"LowLimit\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J\",\"value\":\"1000000000\"},\"LowNode\":\"0\"},\"LedgerEntryType\":\"RippleState\",\"LedgerIndex\":\"8DAFD598632DB249B645EA43E94B5339966B2FB5CEDA9158276498F86141645E\",\"PreviousFields\":{\"Balance\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"rrrrrrrrrrrrrrrrrrrrBZbvji\",\"value\":\"3975740.88133\"}},\"PreviousTxnID\":\"634B26D4349919AF97BEF1215AA131AB07DA3B697F6F843C51A3FFD4ADF5EBB4\",\"PreviousTxnLgrSeq\":88533296}},{\"ModifiedNode\":{\"FinalFields\":{\"Balance\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rrrrrrrrrrrrrrrrrrrrBZbvji\",\"value\":\"6537179.10522535\"},\"Flags\":1114112,\"HighLimit\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR\",\"value\":\"0\"},\"HighNode\":\"194\",\"LowLimit\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J\",\"value\":\"5890000000000345e-4\"},\"LowNode\":\"0\"},\"LedgerEntryType\":\"RippleState\",\"LedgerIndex\":\"9439F82DAA1AD223BBF596F6625A503BF5868C8F1FB8867CC532B032A7383240\",\"PreviousFields\":{\"Balance\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rrrrrrrrrrrrrrrrrrrrBZbvji\",\"value\":\"0.271530281\"}},\"PreviousTxnID\":\"8E90DE5C53B201A0A1F4D2ED34D4DA26A30044DFDF1D885E2B53F6F4504FC5E1\",\"PreviousTxnLgrSeq\":88533275}},{\"ModifiedNode\":{\"FinalFields\":{\"Account\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"Asset\":{\"currency\":\"XRP\"},\"Asset2\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR\"},\"AuctionSlot\":{\"Account\":\"rEPR5XZjXDUMy65K5qUMgGFVqqo8CiA8AU\",\"DiscountedFee\":39,\"Expiration\":766234452,\"Price\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"value\":\"10000000\"}},\"Flags\":0,\"LPTokenBalance\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"value\":\"27151566861.22734\"},\"OwnerNode\":\"0\",\"TradingFee\":392,\"VoteSlots\":[{\"VoteEntry\":{\"Account\":\"rs4HULUYNcbwCmH4KokAk7pus6wRpgtfmg\",\"TradingFee\":750,\"VoteWeight\":6411}},{\"VoteEntry\":{\"Account\":\"r9eVykdjG58vsFk99GQozRbE7LTovFG6Py\",\"TradingFee\":1000,\"VoteWeight\":636}},{\"VoteEntry\":{\"Account\":\"rH9ZRJDe1dbrJY78gXpZWbhkqz94byf2Ab\",\"TradingFee\":8,\"VoteWeight\":9129}},{\"VoteEntry\":{\"Account\":\"rwQbT25TA3NEvTAHFxmfEZkMUfQ7tYJ7T6\",\"TradingFee\":330,\"VoteWeight\":0}},{\"VoteEntry\":{\"Account\":\"rpNmRsusXxqJoaDny4B3nVTqwkE1xDEDGt\",\"TradingFee\":1000,\"VoteWeight\":531}},{\"VoteEntry\":{\"Account\":\"r9dRhoGsmBStn3qdTq3mYychrFYneR6wn5\",\"TradingFee\":850,\"VoteWeight\":1099}},{\"VoteEntry\":{\"Account\":\"rp6Ak4Z5X6HcQZpuEWHJ7esuXHcwraFFAU\",\"TradingFee\":375,\"VoteWeight\":365}}]},\"LedgerEntryType\":\"AMM\",\"LedgerIndex\":\"A513513E3A227FE3A7920740EC8A336C68A166881930E455E16F28EED794D867\",\"PreviousFields\":{\"LPTokenBalance\":{\"currency\":\"0369BC054184BA4C655E4197B570C2AA25AFA8E4\",\"issuer\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"value\":\"27155542602.10867\"}}}},{\"ModifiedNode\":{\"FinalFields\":{\"Balance\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rrrrrrrrrrrrrrrrrrrrBZbvji\",\"value\":\"-44644420621.16854\"},\"Flags\":16908288,\"HighLimit\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rNkJATb3PcVggEUcntMwt6b3662M1p44u3\",\"value\":\"0\"},\"HighNode\":\"0\",\"LowLimit\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rBRAD8ntFu3yFhpoo7uLjj4EbVi2UQ1EMR\",\"value\":\"0\"},\"LowNode\":\"180\"},\"LedgerEntryType\":\"RippleState\",\"LedgerIndex\":\"E8EE4E6C9AB9CF46887E15F9766C7B2734D7502BE6BB545350FA7C352A0BD961\",\"PreviousFields\":{\"Balance\":{\"currency\":\"4252414400000000000000000000000000000000\",\"issuer\":\"rrrrrrrrrrrrrrrrrrrrBZbvji\",\"value\":\"-44650957800.00224\"}},\"PreviousTxnID\":\"1DF6D18DC3BE6C63ABAF2236A9B68E807A7E13C0EEF4F82886C8912B72815EB4\",\"PreviousTxnLgrSeq\":88602916}},{\"ModifiedNode\":{\"FinalFields\":{\"Account\":\"raxq4QbVoAxFkWzggx54ZPjN98oLoqQF7J\",\"Balance\":\"344487372\",\"Flags\":0,\"OwnerCount\":7,\"Sequence\":86780514},\"LedgerEntryType\":\"AccountRoot\",\"LedgerIndex\":\"EB47A23F99C99D6B3ACEFE6882C87B415C838CB4ECF8B09BF23DA1DEAB58F4AC\",\"PreviousFields\":{\"Balance\":\"338082332\",\"Sequence\":86780513},\"PreviousTxnID\":\"BEBF4F42EA9072F73146A4D27D98E1CE75E2BFD49BE88BFB3A6924EF9133267C\",\"PreviousTxnLgrSeq\":88603407}}],\"TransactionIndex\":0,\"TransactionResult\":\"tesSUCCESS\"},\"validated\":true,\"date\":771377192,\"ledger_index\":88603511,\"inLedger\":88603511}"
}
This endpoint returns transaction details, including specification, outcome and rawTransaction data (Only available on paid API plans).
Page on bithomp that displays it:
https://bithomp.com/explorer/277EE666435B4A5AB50FA7391E9D202D74EB29AEE56BA8E9D82E631BFD31F41F
.
HTTP Request
GET https://bithomp.com/api/v2/transaction/<hash>
URL Parameters
| Parameter | Description |
|---|---|
| hash | Transaction hash |
Tx Decode
curl "https://bithomp.com/api/v2/transaction/decode/1200032280000000240000003241833237B8665D2F4E00135E8DE646589F68400000000000000C732103709723A5967EAAED571B71DB511D87FA44CC7CDDF827A37F457A25E14D862BCD74473045022100C6A6999BD33153C6A236D78438D1BFEEEC810CFE05D0E41339B577560C9143CA022074F07881F559F56593FF680049C12FC3BCBB0B73CE02338651522891D95886F981146078086881F39B191D63B528D914FEA7F8CA2293F9EA7C06636C69656E747D15426974686F6D7020746F6F6C20762E20302E302E337E0A706C61696E2F74657874E1F1"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transaction/decode/1200032280000000240000003241833237B8665D2F4E00135E8DE646589F68400000000000000C732103709723A5967EAAED571B71DB511D87FA44CC7CDDF827A37F457A25E14D862BCD74473045022100C6A6999BD33153C6A236D78438D1BFEEEC810CFE05D0E41339B577560C9143CA022074F07881F559F56593FF680049C12FC3BCBB0B73CE02338651522891D95886F981146078086881F39B191D63B528D914FEA7F8CA2293F9EA7C06636C69656E747D15426974686F6D7020746F6F6C20762E20302E302E337E0A706C61696E2F74657874E1F1", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transaction/decode/1200032280000000240000003241833237B8665D2F4E00135E8DE646589F68400000000000000C732103709723A5967EAAED571B71DB511D87FA44CC7CDDF827A37F457A25E14D862BCD74473045022100C6A6999BD33153C6A236D78438D1BFEEEC810CFE05D0E41339B577560C9143CA022074F07881F559F56593FF680049C12FC3BCBB0B73CE02338651522891D95886F981146078086881F39B191D63B528D914FEA7F8CA2293F9EA7C06636C69656E747D15426974686F6D7020746F6F6C20762E20302E302E337E0A706C61696E2F74657874E1F1");
print $data;
The above command returns JSON structured like this:
{
"id": "9B124C14528ED14C0BDA17075A39B90ABED598B77A22DFEEBD913CAC07A513BC",
"signedTransaction": {
"TransactionType": "AccountSet",
"Flags": 2147483648,
"Sequence": 50,
"EmailHash": "833237B8665D2F4E00135E8DE646589F",
"Fee": "12",
"SigningPubKey": "03709723A5967EAAED571B71DB511D87FA44CC7CDDF827A37F457A25E14D862BCD",
"TxnSignature": "3045022100C6A6999BD33153C6A236D78438D1BFEEEC810CFE05D0E41339B577560C9143CA022074F07881F559F56593FF680049C12FC3BCBB0B73CE02338651522891D95886F9",
"Account": "r9onCSkYP2tYcukw2KUHMZ1Sn5YixQCgmN",
"Memos": [
{
"Memo": {
"MemoType": "636C69656E74",
"MemoData": "426974686F6D7020746F6F6C20762E20302E302E33",
"MemoFormat": "706C61696E2F74657874"
}
}
]
}
}
This endpoint decode a signed transaction.
Page on bithomp with the same decode function, but client-side:
https://bithomp.com/submit/
.
HTTP Request
GET https://bithomp.com/api/v2/transaction/decode/<blob>
URL Parameters
| Parameter | Description |
|---|---|
| blob | A signed transaction blob to decode |
Tx Submit
curl -H "Content-Type: application/json"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
--request POST
--data '{"signedTransaction":"1200032280000000240000000368400000000000000C732103A71B44FD71C956C3CC0A540F2FBB577C4A300BC71244D86E4EB57220E58BFA26744730450221008D53E4188B39E8EF9953672B42C7ED3F7760F4B2FA51EC91A6EB0B693A6002B2022016384B9F552C75FD3BDE13C65E1CC3DA646AB10E3DD785EB2005620C6AF2C52B7710746573742E626974686F6D702E636F6D811485C536EFA7EAACCC51916E32FF720810A2226008F9EA7C06636C69656E747D16426974686F6D7020746F6F6C20762E20302E342E31317E0A706C61696E2F74657874E1F1","id":"BC35145B69F75FE5B41D6198D56203C2CFD2C1D968C09B09A37530CCB3AD2C6D"}'
https://bithomp.com/api/v2/transaction/submit/
$.ajax({
url: "https://bithomp.com/api/v2/transaction/submit/",
type: "POST",
contentType: "application/json",
headers: {
"x-bithomp-token": "abcd-abcd-0000-abcd-0123abcdabcd"
},
data: {
"signedTransaction": "1200032280000000240000000368400000000000000C732103A71B44FD71C956C3CC0A540F2FBB577C4A300BC71244D86E4EB57220E58BFA26744730450221008D53E4188B39E8EF9953672B42C7ED3F7760F4B2FA51EC91A6EB0B693A6002B2022016384B9F552C75FD3BDE13C65E1CC3DA646AB10E3DD785EB2005620C6AF2C52B7710746573742E626974686F6D702E636F6D811485C536EFA7EAACCC51916E32FF720810A2226008F9EA7C06636C69656E747D16426974686F6D7020746F6F6C20762E20302E342E31317E0A706C61696E2F74657874E1F1",
"id": "BC35145B69F75FE5B41D6198D56203C2CFD2C1D968C09B09A37530CCB3AD2C6D"
},
success: function(result) {
console.log(JSON.stringify(result, undefined, 2));
},
error: function(error) {
console.log(error);
}
});
The above command returns JSON structured like one of those:
{
"result": "tesSUCCESS",
"id": "BC35145B69F75FE5B41D6198D56203C2CFD2C1D968C09B09A37530CCB3AD2C6D"
}
{
"result": "terNO_ACCOUNT",
"message": "The source account does not exist.",
"id": "BC35145B69F75FE5B41D6198D56203C2CFD2C1D968C09B09A37530CCB3AD2C6D"
}
{
"result": "terPRE_SEQ",
"message": "Missing/inapplicable prior transaction.",
"id": "BC35145B69F75FE5B41D6198D56203C2CFD2C1D968C09B09A37530CCB3AD2C6D"
}
This endpoint returns a final status of a submitted transaction.
Page where it used on bithomp:
https://bithomp.com/explorer/?hwlogin
.
HTTP Request
POST https://bithomp.com/api/v2/transaction/submit
POST Parameters
| Parameter | Description |
|---|---|
| id | (Optional) A calculated hash of the signed transaction |
| signedTransaction | A blob of signed transaction to submit |
Transactions
Transactions by address
curl "https://bithomp.com/api/v2/transactions/rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv?limit=1"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transactions/rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv?limit=1", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transactions/rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv?limit=1");
print $data;
The above command returns JSON structured like this:
[
{
"type": "payment",
"address": "rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv",
"sequence": 3435035,
"id": "925C805732914B366436B2C8D42E83B07C1C17B717604457D9919F5A5BE1EF4A",
"ctid": "C5D0B456001D0000",
"specification": {
"source": {
"address": "rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv",
"maxAmount": {
"currency": "XRP",
"value": "10000"
}
},
"destination": {
"address": "rBP7HKSXMYTA5wZzV6UE9xrqPrAf73AhAf"
},
"signer": {
"address": "rBMFF7vhe2pxYS5wo3dpXMDrbbRudB7hGf"
}
},
"outcome": {
"result": "tesSUCCESS",
"timestamp": "2025-07-18T21:03:10.000Z",
"fee": "0.01",
"balanceChanges": {
"rBP7HKSXMYTA5wZzV6UE9xrqPrAf73AhAf": [
{
"currency": "XRP",
"value": "10000"
}
],
"rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv": [
{
"currency": "XRP",
"value": "-10000.01"
}
]
},
"ledgerIndex": 97563734,
"ledgerVersion": 97563734,
"indexInLedger": 29,
"deliveredAmount": {
"currency": "XRP",
"value": "10000"
}
},
"rawTransaction": "{\"Account\":\"rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv\",\"Amount\":\"10000000000\",\"DeliverMax\":\"10000000000\",\"Destination\":\"rBP7HKSXMYTA5wZzV6UE9xrqPrAf73AhAf\",\"Fee\":\"10000\",\"LastLedgerSequence\":97563983,\"Sequence\":3435035,\"SigningPubKey\":\"03511308215C16636E6605938C61D28B03345CFFEAA0D9EACCFA9386BAA1A55752\",\"TransactionType\":\"Payment\",\"TxnSignature\":\"304402200E2EF4A99257F7B4F99665429430F2ED6214AC4B15EA7408E36E1D9AA29DB10B02205D30DCF7EB9B2148FDF9E74C1ADCB5FA0E4F5D3032656E7A23A8965B350A65BE\",\"ctid\":\"C5D0B456001D0000\",\"date\":806187790,\"hash\":\"925C805732914B366436B2C8D42E83B07C1C17B717604457D9919F5A5BE1EF4A\",\"inLedger\":97563734,\"ledger_index\":97563734,\"meta\":{\"AffectedNodes\":[{\"ModifiedNode\":{\"FinalFields\":{\"Account\":\"rBP7HKSXMYTA5wZzV6UE9xrqPrAf73AhAf\",\"Balance\":\"19646903233\",\"Flags\":0,\"OwnerCount\":0,\"Sequence\":88806189},\"LedgerEntryType\":\"AccountRoot\",\"LedgerIndex\":\"976A6886DDD5E81B6159EEA93032E3DE8EF35D556D817B0A5725B81E2FE767ED\",\"PreviousFields\":{\"Balance\":\"9646903233\"},\"PreviousTxnID\":\"A7414DAC02358A56E56012772D736E9017A4FBE06AB98F59A776310CF620CB07\",\"PreviousTxnLgrSeq\":97563546}},{\"ModifiedNode\":{\"FinalFields\":{\"Account\":\"rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv\",\"Balance\":\"23580872698742\",\"Flags\":1179648,\"OwnerCount\":0,\"RegularKey\":\"rBMFF7vhe2pxYS5wo3dpXMDrbbRudB7hGf\",\"Sequence\":3435036},\"LedgerEntryType\":\"AccountRoot\",\"LedgerIndex\":\"C3B625B296E95A21D7BBBB7E3D343AF423B463B87B5D56EE7F79C8E16A47A6F5\",\"PreviousFields\":{\"Balance\":\"23590872708742\",\"Sequence\":3435035},\"PreviousTxnID\":\"2E71FDF56F4F893976ED407705CA1BBF62B795BE7CECF186C907CDCED882C6D3\",\"PreviousTxnLgrSeq\":97563734}}],\"TransactionIndex\":29,\"TransactionResult\":\"tesSUCCESS\",\"delivered_amount\":\"10000000000\"},\"validated\":true}"
}
]
This endpoint returns a list of transactions for a specific address. (Only available on paid API plans)
Page on bithomp that displays it:
https://bithomp.com/explorer/rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv
.
HTTP Request
GET https://bithomp.com/api/v2/transactions/<address>
URL Parameters
| Parameter | Description |
|---|---|
| address | The address to get transactions for |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| startTxHash | null | The hash of the transaction to start from. If not specified, the latest transactions will be returned. |
| forward | false | If true, the transactions will be returned in ascending order (from oldest to newest). If false, they will be returned in descending order (from newest to oldest). |
| type | null | The type of transactions to filter by. Possible values: Payment, OfferCreate, OfferCancel, TrustSet, AccountSet, etc. (case-insensitive). If not specified, all types will be returned. |
| initiated | null | The address that initiated the transaction. If not specified, all transactions will be returned. |
| counterparty | null | The address that is the counterparty in the transaction. If not specified, all transactions will be returned. |
| excludeFailures | false | If true, transactions with a status other than tesSUCCESS will be excluded from the results. |
| ledgerIndexMin | null | The minimum ledger index to filter transactions by. If not specified, all transactions will be returned. |
| ledgerIndexMax | null | The maximum ledger index to filter transactions by. If not specified, all transactions will be returned. |
| fromDate | null | The minimum date to filter transactions by. If not specified, all transactions will be returned. |
| toDate | null | The maximum date to filter transactions by. If not specified, all transactions will be returned. |
| sourceTag | null | The source tag to filter transactions by. If not specified, all transactions will be returned. |
| destinationTag | null | The destination tag to filter transactions by. If not specified, all transactions will be returned. |
| marker | null | A marker to paginate through the results. If not specified, the first page of results will be returned. |
| includeRawTransactions | false | If true, the raw transaction data will be included in the results. This is useful for debugging or further processing of the transactions. |
| limit | 100 | The number of transactions to return. (More than 100 is available for the Standard plan and higher). |
TOP transactions (24h)
curl "https://bithomp.com/api/v2/transactions/whale"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transactions/whale", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transactions/whale");
print $data;
The above command returns JSON structured like this:
[
{
"type": "Payment",
"hash": "4DC91839C1DB6C9C88479260493745C77455C0D2223D1411332F2F351B99E815",
"timestamp": 1745843351,
"amount": "10000000000000",
"amountFiats": {
"aed": "85200000",
"ars": "27101300000",
"aud": "36200000",
"bch": "65729.4",
"bdt": "2818200000",
"bhd": "8737460",
"bmd": "23200000",
"bnb": "38217",
"brl": "131900000",
"btc": "243.6",
"cad": "32100000",
"chf": "19200000",
"clp": "21675600000",
"cny": "169000000",
"czk": "509400000",
"dkk": "152300000",
"dot": "5495705.5",
"eos": "33914790",
"eth": "12811",
"eur": "20415000",
"gbp": "17400000",
"hkd": "179900000",
"huf": "8259600000",
"idr": "389830000000",
"ils": "84200000",
"inr": "1971700000",
"jpy": "3321000000",
"krw": "33453300000",
"kwd": "7112070",
"lkr": "6946900000",
"ltc": "266036.4",
"mmk": "48649900000",
"mxn": "452200000",
"myr": "101200000",
"ngn": "37272600000",
"nok": "241600000",
"nzd": "38900000",
"php": "1307200000",
"pkr": "6517800000",
"pln": "87300000",
"rub": "1907300000",
"sar": "87000000",
"sek": "224000000",
"sgd": "30400000",
"thb": "778100000",
"try": "891500000",
"twd": "753400000",
"uah": "967000000",
"usd": "23206200",
"vef": "2321880",
"vnd": "602930000000",
"zar": "431700000",
"bits": "243300000",
"sats": "24329300000"
},
"sourceAddress": "rrsSUzrT2mYAMiL46pm7cwn6MmMmxVkEWM",
"sourceTag": null,
"destinationAddress": "rPyCQm8E5j78PDbrfKF24fRC7qUAk1kDMZ",
"destinationTag": null,
"ledgerIndex": 95761070,
"status": "tesSUCCESS",
"fee": "8000",
"sourceAddressDetails": {
"username": null,
"service": "bithumb"
},
"destinationAddressDetails": {
"username": null,
"service": null
}
}
]
This endpoint returns the list of the most significant transactions for the last 24 hours. That includes Payments, Checks, Escrows, Token (IOU) payments, etc. (Only available on paid API plans)
Page where it used on bithomp:
https://bithomp.com/en/whales.
HTTP Request
GET http://bithomp.com/api/v2/transactions/whale
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| currency | null | - to filter by currency, for example: XRP, XAH, IOU Tokens in the format rIsssuer:HEXCURRENCY, MPT MPT-001A8DB597CD0B5C6BBC00EB450F9637C96632FA8E5971C5 |
| transactionType | null | - to filter specific transaction types, for example Payment |
| limit | 100 | The number of transactions to return. (More than 100 is available for the Standard plan and higher). |
TOP receivers (24h)
curl "https://bithomp.com/api/v2/transactions/whale/receivers"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transactions/whale/receivers", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transactions/whale/receivers");
print $data;
The above command returns JSON structured like this:
{
addresses: [
{
"address": "rNxp4h8apvRis6mJf9Sh8C6iRxfrDWN7AV",
"addressDetails": {
"address": "rNxp4h8apvRis6mJf9Sh8C6iRxfrDWN7AV",
"username": null,
"service": "Binance"
},
"transactionsCount": 17075,
"amount": "32803888007632"
}
],
summary: {
"totalTransactionsCount": 1847405,
"transactionsCount": 1028360,
"totalReceivers": 40175
}
}
This endpoint returns the list of the Addresses that are receiving the most in the last 24 hours. That includes Payments, Checks, Escrows, Token (IOU) payments, etc. (Only available on paid API plans)
Page where it used on bithomp:
https://bithomp.com/en/whales/receivers.
HTTP Request
GET http://bithomp.com/api/v2/transactions/whale/receivers
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| currency | null | - to filter by currency, for example: XRP, XAH, IOU Tokens in the format rIsssuer:HEXCURRENCY, MPT MPT-001A8DB597CD0B5C6BBC00EB450F9637C96632FA8E5971C5 |
| transactionType | null | - to filter specific transaction types, for example Payment |
| limit | 100 | The number of transactions to return. (More than 100 is available for the Standard plan and higher). |
TOP senders (24h)
curl "https://bithomp.com/api/v2/transactions/whale/senders"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transactions/whale/senders", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transactions/whale/senders");
print $data;
The above command returns JSON structured like this:
{
addresses: [
{
"address": "rDAE53VfMvftPB4ogpWGWvzkQxfht6JPxr",
"addressDetails": {
"address": "rDAE53VfMvftPB4ogpWGWvzkQxfht6JPxr",
"username": null,
"service": "Binance"
},
"transactionsCount": 1270,
"amount": "47274376966693"
}
],
summary: {
"totalTransactionsCount": 1846418,
"transactionsCount": 1027661,
"totalSenders": 19487
}
}
This endpoint returns the list of the Addresses that are sending the most in the last 24 hours. That includes Payments, Checks, Escrows, Token (IOU) payments, etc. (Only available on paid API plans)
Page where it used on bithomp:
https://bithomp.com/en/whales/senders.
HTTP Request
GET http://bithomp.com/api/v2/transactions/whale/senders
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| currency | null | - to filter by currency, for example: XRP, XAH, IOU Tokens in the format rIsssuer:HEXCURRENCY, MPT MPT-001A8DB597CD0B5C6BBC00EB450F9637C96632FA8E5971C5 |
| transactionType | null | - to filter specific transaction types, for example Payment |
| limit | 100 | The number of transactions to return. (More than 100 is available for the Standard plan and higher). |
TOP submitters (24h)
curl "https://bithomp.com/api/v2/transactions/whale/submitters"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/transactions/whale/submitters", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/transactions/whale/submitters");
print $data;
The above command returns JSON structured like this:
{
addresses: [
{
"address": "rUg8ac5ikpTaWk5RPei8xuYkNEyUs53G1i",
"addressDetails": {
"address": "rUg8ac5ikpTaWk5RPei8xuYkNEyUs53G1i",
"username": null,
"service": null
},
"transactionsCount": 282561,
"amount": "1144667950",
"fee": "95409675"
}
],
summary: {
"totalTransactionsCount": 1846240,
"transactionsCount": 1846240,
"totalSubmitters": 21995
}
}
This endpoint returns the list of Addresses that submitted the most transactions in the last 24 hours. That includes Failed on Ledger transaction, all types. (Only available on paid API plans)
Page where it used on bithomp:
https://bithomp.com/en/whales/submitters.
HTTP Request
GET http://bithomp.com/api/v2/transactions/whale/submitters
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| currency | null | - to filter by currency, for example: XRP, XAH, IOU Tokens in the format rIsssuer:HEXCURRENCY, MPT MPT-001A8DB597CD0B5C6BBC00EB450F9637C96632FA8E5971C5 |
| transactionType | null | - to filter specific transaction types, for example Payment |
| limit | 100 | The number of transactions to return. (More than 100 is available for the Standard plan and higher). |
XRP/XAH
XRP/XAH distribution
curl "https://bithomp.com/api/v2/addresses/richlist?escrow=short"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/addresses/richlist?escrow=short", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/addresses/richlist?escrow=short");
print $data;
The above command returns JSON structured like this:
{
"escrow": "short",
"summary": {
"maxCoins": "100000000000000000",
"totalCoins": "99985785664519475",
"activeAccounts": 7082776
},
"addresses": [
{
"address": "rB3WNZc45gxzW31zxfXdkx8HusAhoqscPn",
"balance": "231952522",
"escrowShortBalance": "5000000000000000",
"addressDetails": {
"username": null,
"service": "Ripple"
}
},
{
"address": "r9UUEXn3cx2seufBkDa8F86usfjWM6HiYp",
"balance": "219850015",
"escrowShortBalance": "5000000000000000",
"addressDetails": {
"username": null,
"service": "Ripple"
}
}
]
}
This endpoint returns the Distribution of XRP/XAH addresses (TOP Holders / Rich list), sorted by balance. It also includes the total number of active accounts and the total amount of XRP/XAH.
Page where it used on bithomp:
https://bithomp.com/en/distribution.
HTTP Request
GET https://bithomp.com/api/v2/addresses/richlist
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| escrow | null | If set to short, results will include also escrow balances that will likely be received from escrows by this account (this account = destination), if set to locked - will include also locked balances that are held in escrows created by this account (this account = source). If not specified, only the actual balance will be returned. |
Ledger entry
Ledger entry by index
curl "https://bithomp.com/api/v2/ledgerEntry/0802E4E7EACC17414747174474487E9DF24CFDB61DD12C58B09D9EFB42C7F8C8"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/ledgerEntry/0802E4E7EACC17414747174474487E9DF24CFDB61DD12C58B09D9EFB42C7F8C8", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/ledgerEntry/0802E4E7EACC17414747174474487E9DF24CFDB61DD12C58B09D9EFB42C7F8C8");
print $data;
The above command returns JSON structured like this:
{
"index": "0802E4E7EACC17414747174474487E9DF24CFDB61DD12C58B09D9EFB42C7F8C8",
"ledger_hash": "9F2EC75BC0E40D214447BC96FBE43B29A741ACA9B79B99120D8D1088678C274B",
"ledger_index": 98327878,
"node": {
"Balance": {
"currency": "LCA",
"issuer": "rrrrrrrrrrrrrrrrrrrrBZbvji",
"value": "0"
},
"Flags": 3866624,
"HighLimit": {
"currency": "LCA",
"issuer": "rQGiUHkytmWPj7VFvy1NLGYm6nSvCHENCA",
"value": "0.01",
"issuerDetails": {
"address": "rQGiUHkytmWPj7VFvy1NLGYm6nSvCHENCA",
"username": null,
"service": null
}
},
"HighNode": "0",
"LedgerEntryType": "RippleState",
"LowLimit": {
"currency": "LCA",
"issuer": "rw1nGFn6rnH242H83bBUo5NwHtbQ8juSNC",
"value": "100000000",
"issuerDetails": {
"address": "rw1nGFn6rnH242H83bBUo5NwHtbQ8juSNC",
"username": null,
"service": null
}
},
"LowNode": "0",
"PreviousTxnID": "5B37F9EE650016C27EF3DEC96159D1F4C4DB6E9AFFB6A0228A669B9AB4C0A30A",
"PreviousTxnLgrSeq": 7283774,
"index": "0802E4E7EACC17414747174474487E9DF24CFDB61DD12C58B09D9EFB42C7F8C8",
"flags": {
"lowReserve": true,
"highReserve": true,
"lowAuth": false,
"highAuth": true,
"lowNoRipple": true,
"highNoRipple": true,
"lowFreeze": false,
"highFreeze": false,
"ammNode": false,
"lowDeepFreeze": false,
"highDeepFreeze": false
},
"previousTxAt": 1403186230
},
"validated": true,
"_nodepref": "nonfh"
}
This endpoint returns a specific ledger entry by its index.
Page where it used on bithomp:
https://bithomp.com/en/object/0802E4E7EACC17414747174474487E9DF24CFDB61DD12C58B09D9EFB42C7F8C8.
HTTP Request
GET https://bithomp.com/api/v2/ledgerEntry/<index>
URL Parameters
| Parameter | Description |
|---|---|
| index | The index of the ledger entry to retrieve |
Query Parameters
| Parameter | Default | Description |
|---|---|---|
| ledgerIndex | null | The ledger index to retrieve the entry from. If not specified, the latest validated ledger will be used. |
| date | null | The date to retrieve the entry from. If not specified, the latest validated ledger will be used. |
| previousTxHash | null | The hash of the previous transaction to retrieve the entry from. If not specified, the latest validated ledger will be used. |
| currencyDetails | false | If true, the currency details will be included in the response. This is useful for IOU tokens and MPTs. |
Historical data
Account Activations
curl "https://bithomp.com/api/v2/account-chart?span=month&period=year"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/account-chart?span=month&period=year", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/account-chart?span=month&period=year");
print $data;
The above command returns JSON structured like this:
{
"span": "month",
"period": "year",
"chart": [
{
"time": "2023-10-31T23:59:59.999Z",
"activations": 100
},
{
"time": "2023-11-30T23:59:59.999Z",
"activations": 78
},
{
"time": "2023-12-31T23:59:59.999Z",
"activations": 33834
}
]
}
This endpoint returns data to draw a chart of account activations (available only on the Standard plan and higher).
Page where it used on bithomp:
https://bithomp.com/activations.
HTTP Request
GET https://bithomp.com/api/v2/account-chart
Response Format
| Field | Value | Description |
|---|---|---|
| period | all |
A time period, all time all, last hour hour, last 24h day, last 7 days week, last 30 days month, last 365 days year or as timestamps from..to, examples: 1671490800000..1671663600000 or 2022-12-20T00:00:00.000Z..2022-12-22T00:00:00.000Z |
| span | null | A time span for the chart, can be minute, hour, day, month, year, not all spans are available for large periods, for a period hour you can have minute, for periods up to 60 hours, you can have hour, day, month, for up to 60 days - day, month. |
Genesis
curl "https://bithomp.com/api/v2/genesis"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/genesis", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/genesis");
print $data;
The above command returns JSON structured like this:
{
"count": 136,
"inception": 1357010470,
"ledger_index": 32570,
"genesis_balance_all": 99999999999.99632,
"balance_all": 483189349.682485,
"balance_update": 1578499794,
"genesis": [
{
"address": "rBKPS4oLSaV2KVVuHH8EpQqMGgGefGFQs7",
"genesis_balance": 370,
"genesis_index": 1,
"balance": 20.009958
},
{
"address": "rLs1MzkFWCxTbuAHgjeTZK4fcCDDnf2KRv",
"genesis_balance": 10000,
"genesis_index": 2,
"rippletrade": "leotreasure",
"balance": 4507.158497
},
{
}
]
}
This endpoint retrieves a list of addresses from the first available ledger in XRPL history.
Page where it used on bithomp:
https://bithomp.com/genesis.
HTTP Request
GET https://bithomp.com/api/v2/genesis
Response Format
| Field | Value | Description |
|---|---|---|
| count | Integer | The amount of returned addresses. |
| inception | Integer | Inception UNIX timestamp. |
| ledger_index | Integer | Ledger index (the first available in history). |
| genesis_balance_all | Float | Sum of all balances in the ledger_index. |
| balance_all | Float | Sum of balances of those addresses on the balance_update time. |
| balance_update | Integer | UNIX timestamp of the last update of balances. |
| genesis | Array | Array of addresses in ledger_index. |
| genesis[].address | String | Address |
| genesis[].genesis_balance | Float | XRP balance on that genesis[].address on the time of inception. |
| genesis[].genesis_index | Integer | Index of the address in the ledger_index. |
| genesis[].rippletrade | String | Username that genesis[].address used on rippletrade.com. |
| genesis[].nickname | String | Username that genesis[].address used on bitcointalk.org or assign by Ripple (X.). |
| genesis[].balance | Float | XRP balance on that genesis[].address on the time of balance_update. |
History of XRP price alerts
curl "https://bithomp.com/api/v2/price/xrp/alerts"
-H "x-bithomp-token: abcd-abcd-0000-abcd-0123abcdabcd"
function printData(json) {
console.log(JSON.stringify(json, undefined, 2));
}
bithompRequest("https://bithomp.com/api/v2/price/xrp/alerts", printData);
$data = curl_bithomp("https://bithomp.com/api/v2/price/xrp/alerts");
print $data;
The above command returns JSON structured like this:
{
"count": 50,
"timestamp": 1578748266,
"alerts": [
{
"currency": "btc",
"change": "-10.07%",
"timestamp_old": 1578344400,
"timestamp_new": 1578415200,
"rate_old": 0.00002959,
"rate_new": 0.00002661
},
{
"currency": "btc",
"change": "+10.02%",
"timestamp_old": 1578297600,
"timestamp_new": 1578327600,
"rate_old": 0.00002616,
"rate_new": 0.00002878
},
{
}
]
}
This endpoint retrieves a list of our XRP price alerts.
Page where it used on bithomp:
https://bithomp.com/alerts.
HTTP Request
GET https://bithomp.com/api/v2/price/xrp/alerts
Response Format
| Field | Value | Description |
|---|---|---|
| count | Integer The amount of returned alert records. | |
| timestamp | Integer | UNIX timestamp for a request. |
| alerts | Array | Array of alert records. |
| genesis[].currency | String | Currency (in XRP/currency pair). |
| genesis[].change | String | Price change percentage (ex.: +10.24%). |
| genesis[].timestamp_old | Integer | Unix timestamp in seconds for the price: genesis[].rate_old. |
| genesis[].timestamp_new | Integer | Unix timestamp in seconds for the price: genesis[].rate_new. |
| genesis[].rate_old | Float | The price at genesis[].timestamp_old. |
| genesis[].rate_new | Float | The price at genesis[].timestamp_new. |
Errors
The Bithomp API uses the following error codes:
| Error Code | Meaning |
|---|---|
| 400 | Bad Request -- Your request is invalid. |
| 401 | Unauthorized -- Your API key is wrong. |
| 403 | Forbidden -- The requested data not allowed for your API key. |
| 404 | Not Found -- The data not found. |
| 405 | Method Not Allowed -- You tried to access API endpoint with an invalid method. |
| 406 | Not Acceptable -- You requested a format that isn't json. |
| 410 | Gone -- The data requested has been removed from our servers. |
| 418 | I'm a teapot. |
| 429 | Too Many Requests -- You're requesting too often! Slow down! |
| 500 | Internal Server Error -- We had a problem with our server. Try again later. |
| 503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |