HowRare.is public APIs

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.

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? :)

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.

Drops API

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://howrare.is/api/v0.1/drops

Collections API

To retrieve list of all collections for which we have Rarity ranking you need to make a following GET call: GET https://howrare.is/api/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": "https://media.howrare.is/images/project_logo/smb.jpg" }, { "name": "Aurory", "url": "/aurory", "logo": "https://media.howrare.is/images/project_logo/aurory.jpg" } ] } }

Rarity API

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://howrare.is/api/v0.1/collections/{collection} . To retrieve Rarity data for SolanaMonkeyBusiness: GET https://howrare.is/api/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", "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", "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 } } ] } } } 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.