HowRare.is public API


In creating our first public APIs we followed YAGNI principle ("You aren't gonna need it" is a principle which arose from extreme programming that states a programmer should not add functionality until deemed necessary). APIs are very simple but at the same time data rich. If your use case requires some extra functionality let us know, and we will look into supporting it.

Disclaimer: All APIs should be considered experimental. There can be bugs! Use on your own risk! APIs should be considered alpha quality and going forward there will be breaking changes. Do not use as an oracle in DeFi applications!

Please be nice and don't abuse APIs. In case APIs will get abused we will need to put them under authorization and no one wants to deal with extra keys, right? :)

We have very useful Drops page on which you can see many of the upcoming Solana NFT drops. If you want to retrieve this information through an API make a GET call:

GET https://api.howrare.is/v0.1/drops

Shortened sample of successful retrieval

{
  "api_version": "0.1",
  "result": {
    "api_code": 200,
    "api_response": "Success",
    "data": {
      "2022-11-11": [
        {
          "date": "2022-11-11",
          "time": "00:01 UTC",
          "twitter": "",
          "extra": "Some Extra info if there is some",
          "discord": "",
          "website": "",
          "nft_count": 222,
          "price": "0 SOL",
          "name": "Some title",
          "left": "7 hours 59 minutes",
          "image": ""
        }
      ]
    }
  }
}
                            

Use this API to look up mapping between mint and Collections on HowRare.is.

GET https://api.howrare.is/v0.1/find_collection_from_mint/{mint_hash}

In case we have a collection for this mint you will get a response like this:

{
    "api_version":"0.1",
    "result": {
        "api_code":200,
        "api_response":"Success",
        "data": {
            "name":"SolanaMonkeyBusiness (SMB)",
            "url":"\/smb"
        }
    }
}
                            

However in case we will not have mapping you will receive response like this:

{
    "api_version": "0.1",
    "result": {
        "api_code": 404,
        "api_response": "Mint not found"
    }
}
                            

To retrieve list of all collections for which we have Rarity ranking you need to make a following GET call:

GET https://api.howrare.is/v0.1/collections

Shortened sample of successful retrieval

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": [
            {
                "name": "SolanaMonkeyBusiness (SMB)",
                "url": "/smb",
                "logo": "/icons/97cea13f2c66791644ad2cde29c03a6d.jpg",
                "official_rarity": 0,
                "metadata_refresh_ts": 1655641809,
                "me_key": "solana_monkey_business",
                "on_sale": 364,
                "holders": 2863,
                "items": 5000,
                "floor": 185.00,
                "floor_marketcap": 207135250,
                "floor_marketcap_pretty": "207.14M"
            },
            {
                "name": "SolStein",
                "url": "/solstein",
                "logo": "/icons/d4e2b4869413ee9ca60440077e6b8dbe.jpg",
                "official_rarity": 1,
                "metadata_refresh_ts": 1657634055,
                "me_key": "solstein",
                "on_sale": 47,
                "holders": 1950,
                "items": 2217,
                "floor": 8.90,
                "floor_marketcap": 4418430.009,
                "floor_marketcap_pretty": "4.42M"
            }
        ]
    }
}
                        

This API endpoint is available only to those who have applied and received API key. API key is granted for free. It's required so that it would be possible to know who to contact in case of excessive use. To receive API key contact us on Twitter or Discord. You will need to inform us about the project that you are representing, contact information (email or Twitter/Discord/TG) and approximate requests per second/day.

Key should be supplied in headers with key X-HOWRARE-API-KEY

To retrieve rarity you need to make a GET call to:

https://api.howrare.is/v0.1/rarity/{mint_hash}

If mint will not be located you will get 404 error code and "Mint not found" error:

{
    "api_version":"0.1",
    "result": {
        "api_code":404,
        "api_response":"Mint not found"
    }
}

However in case of properly formatted request you will get Rarity data:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection": "SolanaMonkeyBusiness (SMB)",
            "mint": "4ogxDto5Pt8z2EsaQPjjVmsXL9L83hHWRR33Z3L5Ayd7",
            "mint_name": "SMB #127",
            "mint_url": "https://howrare.is/smb/127",
            "rank": 756,
            "rank_algo": "howrare.is",
            "rank_shared_with": 0,
            "all_ranks": {
                "howrare.is": 756,
                "trait_normalized": 2830
            }
        }
    }
}

Once you have retrieved list of collections you can look up rank for a specific collection. To do that use "url" parameter from Collections API response to construct Rarity API url. Rarity URL is in the form of:

https://api.howrare.is/v0.1/collections/{collection}

To retrieve Rarity data for SolanaMonkeyBusiness:

GET https://api.howrare.is/v0.1/collections/smb

If collection will not be located you will get 404 error code and "Collection not found" error:

{
    "api_version":"0.1",
    "result": {
        "api_code":404,
        "api_response":"Collection not found"
    }
}

However in case of properly formatted request you will get Rarity data (items trimmed to 1 item to save space here):

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection": "SolanaMonkeyBusiness (SMB)",
            "ranking_url": "https://howrare.is/smb",
            "official_rarity": 0,
            "twitter": "https://twitter.com/SolanaMBS",
            "discord": "http://discord.gg/solanamonkey",
            "website": "http://solanamonkey.business",
            "description": "5000 Solana inspired generative NFTs",
            "logo": "https://media.howrare.is/images/project_logo/smb.jpg",
            "items": [
                {
                    "id": "1355",
                    "mint": "9ARngHhVaCtH5JFieRdSS5Y8cdZk2TMF4tfGSWFB9iSK",
                    "link": "https://howrare.is/smb/1355/",
                    "name": "SMB #1355",
                    "description": "SMB is a collection of 5000 randomly generated 24x24 pixels NFTs on the Solana Blockchain. Each SolanaMonkey is unique and comes with different type and attributes varying in rarity.",
                    "image": "https://arweave.net/wGChHSDTXTP9oAtTaYh9s8j1MRE0IPmYtH5greqWwZ4",
                    "attributes": [
                        {
                            "name": "Attribute count",
                            "value": "2",
                            "rarity": "45.96"
                        },
                        {
                            "name": "Type",
                            "value": "Skeleton",
                            "rarity": "2.42"
                        },
                        {
                            "name": "Clothes",
                            "value": "Orange Jacket",
                            "rarity": "1.04"
                        },
                        {
                            "name": "Ears",
                            "value": "None",
                            "rarity": "78.08"
                        },
                        {
                            "name": "Mouth",
                            "value": "None",
                            "rarity": "73.64"
                        },
                        {
                            "name": "Eyes",
                            "value": "None",
                            "rarity": "71.52"
                        },
                        {
                            "name": "Hat",
                            "value": "Crown",
                            "rarity": "0.02"
                        }
                    ],
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1,
                        "trait_normalized": 1
                    }
                }
            ]
        },
        "paging": {
            "limit":100,
            "page":1,
            "total_pages":500
        }
    }
}

At HowRare.is we support multiple ranking algorithms. Not all collections have all algorithms enabled. API tries to mimic Web UI. If in the Web UI by default we use HowRare.is ranking (with or without weights) you will see "rank_algo":"howrare.is". However, if ranking is set to match in-house ranking of the NFT project then you will see "rank_algo":"teams_vision". To view all the available rankings for the item look into all_ranks attribute. Possible values for algorithms are: howrare.is, teams_vision, trait_normalized, statistical_rarity.

If you are interested only in Rarity append /only_rarity to the regular call. Example to retrieve only Rarity for SMB collection:

GET https://api.howrare.is/v0.1/collections/smb/only_rarity

Response format is the same as in a regular call, but with extra fields trimmed off. Response example:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection": "SolanaMonkeyBusiness (SMB)",
            "official_rarity": 0,
            "ranking_url": "https://howrare.is/smb",
            "items": [
                {
                    "id": "1355",
                    "mint": "9ARngHhVaCtH5JFieRdSS5Y8cdZk2TMF4tfGSWFB9iSK",
                    "link": "https://howrare.is/smb/1355/",
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1,
                        "trait_normalized": 1
                    }
                }
            ]
        },
        "paging": {
            "limit":100,
            "page":1,
            "total_pages":500
        }
    }
}
                        

You can add paging filters by using page and limit variables in the query. Limit range is from 1_000 to 30_000. Default is 30_000. Example:

GET https://api.howrare.is/v0.1/collections/smb/?page=2&limit=2000

If you want to retrieve the information about owners of the NFTs in any of the listed collections you can use Owners API. Keep in mind that there are couple caveats:

  • Owners data is refreshed only about once every 24h. This delay will be reduced later on.
  • If an item is listed on most marketplaces, it's owner will be set to be equal to the escrow wallet of the marketplace.

To get the owners data use the URL in the following form:

https://api.howrare.is/v0.1/collections/{collection}/owners

To retrieve owners data for SolanaMonkeyBusiness:

GET https://api.howrare.is/v0.1/collections/smb/owners

If collection will not be located you will get 404 error code and "Collection not found" error:

{
    "api_version":"0.1",
    "result": {
        "api_code":404,
        "api_response":"Collection not found"
    }
}

However in case of properly formatted request you will get Owners data (in this elements trimmed to 2 item to save space here):

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection": "SolanaMonkeyBusiness (SMB)",
            "ranking_url": "https://howrare.is/smb",
            "twitter": "https://twitter.com/SolanaMBS",
            "discord": "http://discord.gg/solanamonkey",
            "website": "http://solanamonkey.business",
            "description": "5000 Solana inspired generative NFTs",
            "logo": "https://media.howrare.is/images/project_logo/smb.jpg",
            "owners": {
                "2Ly6auiJtRVbAGv7Dmrco51c9Jyn8UYZoyYtkAjJ7ZAh": "4VUE76iyXsUh5NRfpqfWhKG3Rhm8vCyBQhQrjXPjUmXL",
                "2jsS8xuaMUs57csFKEr5z8SEyt2cFsxRu6dqTxTGGzag": "B1kVMqtMSjzjgqU2QSK8TJLtVF9gV9e7gGnayXHoNGAx"
            }
        },
        "paging": {
            "limit":100,
            "page":1,
            "total_pages":500
        }
    }
}
                        

Key in the "owners" is equal to mint ID (hash). Value is equal to owner.

You can add paging filters by using page and limit variables in the query. Limit range is from 1_000 to 30_000. Default is 30_000. Example:

GET https://api.howrare.is/v0.1/collections/smb/owners/?page=2&limit=2000

If you want to retrieve Mints (hashlist) you can use Mints API.

To get mints use the URL in the following form:

https://api.howrare.is/v0.1/collections/{collection}/mints

To retrieve mints data for Solana Monkey Business:

GET https://api.howrare.is/v0.1/collections/smb/mints

If collection will not be located you will get 404 error code and "Collection not found" error:

{
    "api_version":"0.1",
    "result": {
        "api_code":404,
        "api_response":"Collection not found"
    }
}

However, in case of properly formatted request you will get Mints (in this example elements trimmed to 2 item to save space here):

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection": "SolanaMonkeyBusiness (SMB)",
            "ranking_url": "https://howrare.is/smb",
            "twitter": "https://twitter.com/SolanaMBS",
            "discord": "http://discord.gg/solanamonkey",
            "website": "http://solanamonkey.business",
            "description": "5000 Solana inspired generative NFTs",
            "logo": "https://media.howrare.is/images/project_logo/smb.jpg",
            "mints": [
                "128hYy4xQnPE1jnxEb5hBZCVEEygHRX224oNYYUUgEw9",
                "12N4b7GyUgZRiUMoSDiwpVWzAtH4TzTV7bRpp8RHpVHM"
            ]
        },
        "paging": {
            "limit":100,
            "page":1,
            "total_pages":500
        }
    }
}
                        

You can add paging filters by using page and limit variables in the query. Limit range is from 1_000 to 30_000. Default is 30_000. Example:

GET https://api.howrare.is/v0.1/collections/smb/mints/?page=2&limit=2000

Reminding this one more time: As we can't guarantee that this data is up to date and always accurate, do not use this API as an oracle for DeFi applications!

To retrieve Floor pricing for all NFT collections listed on HowRare.is use a GET request:

GET https://api.howrare.is/v0.1/floor

Result of successful data query:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": [
            {
                "name": "Degen Ape Academy",
                "url": "/degenapes",
                "floor_sol": "24.99",
                "floor_usd": "5596.01"
            },
            {
                "name": "SolanaMonkeyBusiness (SMB)",
                "url": "/smb",
                "floor_sol": "138.00",
                "floor_usd": "30902.34"
            }
        ]
    }
}
                        

Data in the result trimmed to 2 items.

This API is intended for Launchpads to submit newly minted collections for expedited/automated listing. Only approved Launchpads can submit information. Upon approval, you will receive API key with appropriate access level. Launchpad API consists of 4 endpoints.

1. Submit collection

To submit collection make a POST request to:

https://api.howrare.is/v0.1/launchpad

Request body:

{
    "name": "Name",
    "description": "This is new collection and will be the best you have seen",
    "category": "PFP",
    "twitter": "https://www.twitter.com/",
    "website": "https://example.com.xyz/",
    "discord": "https://www.discord.gg/",
    "item_count": 100,
    "mint_date": "2023-03-23",
    "logo": "https://example.com/logo.png",
    "official_rarity": "no",
    "launchpad_slug": "the_name",
    "hashes": [
        "6XhkaaykHs23fKzWyWBSuyiPsj4nsTmue6zZUqAHFrJ",
        "4tsdgsdRipKy4A1ASxd9epbFsJ9Ko4345WBqJ7EDqQZQY",
        "a4t34tHST8Z43gDMracER6wavKWcriU2vasfXg2xkJRz"
    ],
    "first_creator": "34Fh7UoMyU2eLiLYQg63wYVbkY5JkiMN8wT2uVG4gad",
    "collection_hash": "09j23j2lhls9h23lir2j9rmzxnco23ioru29233f",
    "embargo": 1689957783
}
                            

Mandatory fields: name, description, item_count, logo, launchpad_slug. You also should provide one of following: hashes, first_creator, collection_hash. If all 3 will be provided, only one will be used during initial indexing. Priority: hashes, first_creator, collection_hash. Preferred way is to submit hashes, because that can speed up listing and reduce amount of issues.

Supported values for category: PFP, Header, Gaming, Metaverse, Utility, Art, Other.

Item count should be total amount of items expected in the collection even if they all are not minted yet. For example, if collection minted 1500, but expects to have 2500 items, in hashes you should include 1500 hashes, but item_count should be set to 2500.

Embargo can be used to specify UTC timestamp of when it's allowed to publish the collection. Useful in case someone wants/needs to do manual check before collection goes live. Or if you want to have the reveal coordinated with some other events.

Launchpad slug is some ID/URL slug on the Launchpad through which it would be possible to identify collection.

If you want for the collection to be marked as official rarity, set official_rarity to yes. Otherwise, set to no or skip the item.

Format for mint date is yyyy-mm-dd.


Example of failed request:

{
    "api_version": "0.1",
    "result": {
        "api_code": 400,
        "api_response": "Bad request",
        "api_errors": {
            "launchpad_slug": [
                "The launchpad slug field is required."
            ]
        }
    }
}
    

Example of successful request:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection_id": "AzKyf9a4ZF1CV2FB"
        }
    }
}
    

You can use collection_id from the response, to access other 3 endpoints.

2. Update collection

If you want to update previously submitted data you need to make PUT request to

https://api.howrare.is/v0.1/launchpad/{collection_id}

Replace {collection_id} with value of collection_id. In our previous example URL would have been: /v0.1/launchpad/AzKyf9a4ZF1CV2FB

Make sure to include ALL fields, not just the ones you want to update. Therefore, request body should be formatted similarly to how the body is formatted in the 1st endpoint.

3. Collection status

To view the status of the collection processing make a GET request to

https://api.howrare.is/v0.1/launchpad/{collection_id}

Example of the response:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection_id": "AzKyf9vuZF1CV2FB",
            "status": "pending",
            "log": ""
        }
    }
}
    

4. Delete collection

If for some reason you need to delete collection, make a DELETE request to

https://api.howrare.is/v0.1/launchpad/{collection_id}

Example of the response:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Collection deleted"
    }
}
    

This will delete the request to be listed. If however collection is already listed/public and indexed it will not be deleted. To delete public collection please contact with appropriate request.

From API is a helper API. It provides access to some of previously described APIs by using identifiers from other platforms. This helps to eliminate pain point of performing mappings between HowRare.is Collection IDs and 3rd party services. First supported set of identifiers is Magic Eden. This means that if you have Magic Eden collection IDs, you can retrieve HowRare.is rarity data by using them, instead of looking up HowRare.is IDs and calling regular endpoints. Think of From API as a proxy or a router. In the future, if there will be enough demand from the API users, support for identifiers from other services might be added. For example Tensor or Collection hashes etc.

Important!While we try to map all HowRare.is collections to Magic Eden collections, it's possible that some collections are not mapped. If you notice such instances, please let us know so that we could fix this.

Currently, 3 From API endpoints are supported.

To retrieve basic information about Collection on HowRare.is. Useful to do mappings or to check if collection exists etc.

GET https://api.howrare.is/v0.1/from/me/{me_key}/collection/

Replace {me_key} with actual Magic Eden collection key. Example:

GET https://api.howrare.is/v0.1/from/me/solana_monkey_business/collection/

Response:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": [
            {
                "name": "SolanaMonkeyBusiness (SMB)",
                "url": "/smb",
                "logo": "https://howrare.is/icons/97cea13f2c66791644ad2cde29c03a6d.jpg",
                "official_rarity": 0,
                "metadata_refresh_ts": 1676380569,
                "me_key": "solana_monkey_business"
            }
        ]
    }
}
                            

Response in case collection is not found:

{
    "api_version": "0.1",
    "result": {
        "api_code": 404,
        "api_response": "Not found"
    }
}
    

It's possible that 1 Magic Eden collection maps to multiple collections on HowRare.is. In that case you will receive multiple items in the data field.

Second endpoint is Rarity retrieval.

To retrieve rarity by using From API use following request:

GET https://api.howrare.is/v0.1/from/me/{me_key}/rarity/

This will return full rarity with all the attributes. If you want to retrieve only rarity, add no_attributes to the URL.

GET https://api.howrare.is/v0.1/from/me/{me_key}/rarity/no_attributes/

Replace {me_key} with actual Magic Eden collection key. Example:

GET https://api.howrare.is/v0.1/from/me/solana_monkey_business/rarity/

Example response (shortened output to 1 item):

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data": {
            "collection": "SolanaMonkeyBusiness (SMB)",
            "ranking_url": "https://howrare.is/smb",
            "official_rarity": 0,
            "twitter": "https://twitter.com/SolanaMBS",
            "discord": "http://discord.gg/solanamonkey",
            "website": "http://solanamonkey.business",
            "description": "5000 Solana inspired generative NFTs",
            "logo": "https://howrare.is/97cea13f2c66791644ad2cde29c03a6d.jpg",
            "items": [
                {
                    "id": 1355,
                    "mint": "9ARngHhVaCtH5JFieRdSS5Y8cdZk2TMF4tfGSWFB9iSK",
                    "link": "https://howrare.is/smb/1355",
                    "name": "SMB #1355",
                    "description": "SMB is a collection of 5000 randomly generated 24x24 pixels NFTs on the Solana Blockchain. Each SolanaMonkey is unique and comes with different type and attributes varying in rarity.",
                    "image": "https://arweave.net/wGChHSDTXTP9oAtTaYh9s8j1MRE0IPmYtH5greqWwZ4",
                    "attributes": [
                        {
                            "name": "Attribute count",
                            "value": "2",
                            "rarity": "45.96"
                        },
                        {
                            "name": "Type",
                            "value": "Skeleton",
                            "rarity": "2.42"
                        },
                        {
                            "name": "Clothes",
                            "value": "Orange Jacket",
                            "rarity": "1.04"
                        },
                        {
                            "name": "Ears",
                            "value": "None",
                            "rarity": "78.08"
                        },
                        {
                            "name": "Mouth",
                            "value": "None",
                            "rarity": "73.64"
                        },
                        {
                            "name": "Eyes",
                            "value": "None",
                            "rarity": "71.52"
                        },
                        {
                            "name": "Hat",
                            "value": "Crown",
                            "rarity": "0.02"
                        }
                    ],
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1,
                        "trait_normalized": 1
                    }
                }
            ]
        }
    }
}
    

Important!It's possible that 1 Magic Eden collection maps to multiple collections on HowRare.is. In such cases output will be slightly different. To indicate that ranks are merged from multiple collections there will be no data key in the output. Instead, there will be data_merged.

Let's look at the example:

GET https://api.howrare.is/v0.1/from/me/blockasset_legends/rarity/no_attributes/

Shortened response:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "Success",
        "data_merged": {
            "collections": [
                {
                    "collection": "Blockasset Legends - Muhammad Ali",
                    "ranking_url": "https://howrare.is/blockassetlegends_ali",
                    "official_rarity": 1,
                    "twitter": "https://twitter.com/Blockassetco",
                    "discord": "https://discord.gg/9FZ3j6ZmsG",
                    "website": "https://blockasset.co/#/legends",
                    "description": "Blockasset official and licensed Legends Collection by artist Dosbrak",
                    "logo": "https://howrare.is/ab0106558af87b85baba715a9dcb5973.jpg"
                },
                {
                    "collection": "Blockasset Legends - Michael Bisping",
                    "ranking_url": "https://howrare.is/blockassetlegends_bisping",
                    "official_rarity": 1,
                    "twitter": "https://twitter.com/Blockassetco",
                    "discord": "https://discord.gg/9FZ3j6ZmsG",
                    "website": "https://blockasset.co/#/legends",
                    "description": "Blockasset official and licensed Legends Collection by artist Dosbrak",
                    "logo": "https://howrare.is/de5021aa03124395a50d13e64a68bcb6.jpg"
                },
                {
                    "collection": "Blockasset Legends - Jonah Lomu",
                    "ranking_url": "https://howrare.is/blockassetlegends_lomu",
                    "official_rarity": 1,
                    "twitter": "https://twitter.com/Blockassetco",
                    "discord": "https://discord.gg/9FZ3j6ZmsG",
                    "website": "https://blockasset.co/#/legends",
                    "description": "Blockasset official and licensed Legends Collection by artist Dosbrak",
                    "logo": "https://howrare.is/98b455c539fafdc3fbbf9f7caa725c7a.jpg"
                },
                {
                    "collection": "Blockasset Legends - Alexander Ovechkin",
                    "ranking_url": "https://howrare.is/blockassetlegends_ovechkin",
                    "official_rarity": 1,
                    "twitter": "https://twitter.com/Blockassetco",
                    "discord": "https://discord.gg/9FZ3j6ZmsG",
                    "website": "https://blockasset.co/#/legends",
                    "description": "Blockasset official and licensed Legends Collection by artist Dosbrak",
                    "logo": "https://howrare.is/e4fa0043426efb43cf948380a6bc6c97.jpg"
                },
                {
                    "collection": "Blockasset Legends - Wayne Rooney",
                    "ranking_url": "https://howrare.is/blockassetlegends_rooney",
                    "official_rarity": 1,
                    "twitter": "https://twitter.com/Blockassetco",
                    "discord": "https://discord.gg/9FZ3j6ZmsG",
                    "website": "https://blockasset.co/#/legends",
                    "description": "Blockasset official and licensed Legends Collection by artist Dosbrak",
                    "logo": "https://howrare.is/e253b8392df183cd3c9bb1c9c7947524.jpg"
                }
            ],
            "items": [
                {
                    "id": 3107,
                    "mint": "A3VwY3rmRyfqnUXT8HAxVMJf2C3yJdA2vinVn1wb5M4u",
                    "link": "https://howrare.is/blockassetlegends_bisping/3107",
                    "collection_url": "/blockassetlegends_bisping",
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1
                    }
                },
                {
                    "id": 856,
                    "mint": "5z19Ebq5WCuoozQyT8B1srrV1hwbWW4WYQ5g6YQ4m2vX",
                    "link": "https://howrare.is/blockassetlegends_lomu/856",
                    "collection_url": "/blockassetlegends_lomu",
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1
                    }
                },
                {
                    "id": 6362,
                    "mint": "5zrHcWR5NJrYk4cXLzGjo5r4aEDryUNkmwYhhGw32Lm",
                    "link": "https://howrare.is/blockassetlegends_ovechkin/6362",
                    "collection_url": "/blockassetlegends_ovechkin",
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1
                    }
                },
                {
                    "id": 4716,
                    "mint": "HXoHYM8fFHCVreFftAWF6AWEqJKMBd6YRMzRSNDTPSfK",
                    "link": "https://howrare.is/blockassetlegends_rooney/4716",
                    "collection_url": "/blockassetlegends_rooney",
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1
                    }
                },
                {
                    "id": 8175,
                    "mint": "DzeZSP2TJkx2Lu9P4fCD2cC8ifJGXQAB53qBkdhtrQYk",
                    "link": "https://howrare.is/blockassetlegends_ali/8175",
                    "collection_url": "/blockassetlegends_ali",
                    "rank": 1,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 1
                    }
                },
                {
                    "id": 9567,
                    "mint": "7YzGpzXsc8dWaSxzLUVsM4wgn5oX55RjuNwC72PDX2cg",
                    "link": "https://howrare.is/blockassetlegends_ali/9567",
                    "collection_url": "/blockassetlegends_ali",
                    "rank": 2,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 2
                    }
                },
                {
                    "id": 3022,
                    "mint": "kwLGmPFPQ2rG8mLWRGEknfKXo4D5iE4cQjyd3xHmQHy",
                    "link": "https://howrare.is/blockassetlegends_bisping/3022",
                    "collection_url": "/blockassetlegends_bisping",
                    "rank": 2,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 2
                    }
                },
                {
                    "id": 1713,
                    "mint": "97vMSwQGeYV8cGjR2GsiPMybNoWtnAJ8nyBD7MUDGmiP",
                    "link": "https://howrare.is/blockassetlegends_lomu/1713",
                    "collection_url": "/blockassetlegends_lomu",
                    "rank": 2,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 2
                    }
                },
                {
                    "id": 6296,
                    "mint": "Fm2mpoostHjGkwWoRgfE6b3q6PkTVeKsGgXg5f3hQXpS",
                    "link": "https://howrare.is/blockassetlegends_ovechkin/6296",
                    "collection_url": "/blockassetlegends_ovechkin",
                    "rank": 2,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 2
                    }
                },
                {
                    "id": 5985,
                    "mint": "3ZJcGiLiCdUd4KirwTBM4UiuVhYPmeyqtawbAPMYXf6G",
                    "link": "https://howrare.is/blockassetlegends_rooney/5985",
                    "collection_url": "/blockassetlegends_rooney",
                    "rank": 2,
                    "rank_algo": "howrare.is",
                    "all_ranks": {
                        "howrare.is": 2
                    }
                }
            ]
        },
        "paging": {
            "limit": 100,
            "page": 1,
            "total_pages": 100
        }
    }
}
    

data_merged holds two items. First is collections to describe all merged collections. Second is items that holds all merged mints. For each item there is collection_url. You can use it to see to which HowRare.is collection does the specific item belong to.

You can add paging filters by using page and limit variables in the query. Limit range is from 1_000 to 30_000. Default is 30_000. Example:

GET https://api.howrare.is/v0.1/from/me/solana_monkey_business/rarity/?page=2&limit=1000

To access this API you first need to apply for an API key.

API is intended to request HowRare.is to perform some job. At the moment 3 jobs are supported.

First job: refresh_metadata. This job might be useful if you have updated metadata, but the change is not picked up by HowRare.is.

Mandatory field with request is collection. Optional field is mint. If mint is not passed, refresh will happen on a whole collection.

Example of the request:

{
    "collection": "collection_url_key",
    "job": "refresh_metadata"
}
                        

Second job: refresh_owners

Mandatory field with request is collection. Optional field is mint. If mint is not passed, refresh will happen on a whole collection.

Example of the request:

{
    "collection": "collection_url_key",
    "job": "refresh_owners",
    "mint": "aogxDto5Pt8z2EsaQPjjVmsX83783hHWRR33Z3L5Ayd7"
}
                        

Third job: list

This job can be used to request listing of a collection that's listed on Magic Eden, but not yet listed on HowRare.is. All that needs to be submitted is Magic Eden collection key.

Example of the request:

{
    "job": "list",
    "me_key": "solana_monkey_business"
}
                            

All job requests should be sent to:

POST https://api.howrare.is/v0.1/request_job

Response in case of success:

{
    "api_version": "0.1",
    "result": {
        "api_code": 200,
        "api_response": "OK"
    }
}