2019-04-20 開催されたHackthon向けAPI情報です。
Hackthonٕज़ใ2019–04-20 MCH Hackathon@rmanzoku
View Slide
ҙ͜͜Ͱհͨ͠ͷΛඞͣΘͳ͚ΕͳΒͳ͍Θ͚Ͱ͋Γ·ͤΜɻҰ෦API͜ͷϋοΧιϯͷͨΊʹ࡞ͨ͠ͷͰ͢ɻ༧ࠂͳ͘มߋɺআ͞ΕΔ߹͕͋Γ·͢ɻGitHubʹެ։ࡁΈhttps://github.com/doublejumptokyo/mch-hackathonͨΓલͷઆ໌Βͳ͍୯ޠ͕ͰΔ͔͠Ε·ͤΜ͕ɺ͜ͷ͋ͱϝϯλʔͷํʑʹ࣭ͯ͠Έ͍ͯͩ͘͞ɻ
MyCryptoHeroesʹ͍ͭͯ
MyCryptoHeroes͓͞Β͍ERC721ΛͬͨHero / Extension / LandSectorͷEthereum্ͷAssetEthereum্Ͱͷॴ༗ݖΛӡӦॴ༗ͷεϚʔτίϯτϥΫτʹ༬͚Δ͜ͱͰɺCryptoWorldʢήʔϜʣͰར༻ՄೳʹͳΔʢLandSectorྫ֎ʣήʔϜͷใҰ෦ެ։APIΛ௨ͯ͠ࢀরͰ͖Δ
MyCryptoHeroes͓͞Β͍ϢʔβʔήʔϜʹUserIDΛ͍࣋ͬͯΔUserIDͱEthereumΞυϨεΛඥ͚ͮͯཧ͍ͯ͠ΔEthereumΞυϨεΛެ։͢ΔػೳʹΑΓɺ༗ޮͳϢʔβʔEthereumΞυϨε͔ΒϢʔβʔใΛऔಘͰ͖Δ
ERC 721 / Metadata
ERC 721Ethereumͷඪ४ن֨ͷҰͭͰNon-Fungible TokenʢNFTʣΛنఆͨ͠ΠϯλʔϑΣʔεNFTͱɺସෆՄೳͳͷCryptoKittiesΛൃʹEthereum্ͰToken/Assetͷॴ༗ݖͳͲΛنఆࢀর࣮ͱͯ͠OpenZeppelinOSͷͷ͕༗໊CryptoZombiesERC721ERC20ͱൺֱ͞ΕΔ
ERC721 ར༻ΠϝʔδMCHΞηοτOpenZeppelinΛར༻ͨ͠ERC721ʹ४ڌ͍ͯ͠ΔͷͰɺ͘ΘΕΔERC721ͱͯ͠ར༻Ͱ͖ΔϨϯσΟϯάͳͲ
ERC 721 MetadataMCHͷHero͕HeroͨΒ͠Ί͍ͯΔϝλใHeroͷ໊લϨϕϧɺύϥϝʔλͳͲΦϑνΣʔϯใΛ͑ΔJSON APIͰ͋Δ͜ͱ͕ଟ͍OpenSeabazaaar.ioͳͲ͜ͷใΛऔಘͯ͠ද͍ࣔͯ͠ΔMCH+Ͱɺ͜ͷMetadataΛ֦ு͢Δ͜ͱʹΑͬͯΞηοτʹ͍ΖΜͳՁΛՃ͍͚ͯ͠ΔͷͰͳ͍͔
ERC 721 MetadataHerohttps://www.mycryptoheroes.net/metadata/heroes/50010001Extensionhttps://www.mycryptoheroes.net/metadata/extensions/50010001LandSectorhttps://www.mycryptoheroes.net/metadata/landSectors/50010001
MCHใऔಘܥAPI
Ξηοτʹؔ͢ΔใAPISkillઆ໌จͳͲͷऔಘhttps://www.mycryptoheroes.net/experimental-api/skill/1001HeroTypeͷऔಘhttps://www.mycryptoheroes.net/experimental-api/heroType/5001ExtensionTypeͷऔಘhttps://www.mycryptoheroes.net/experimental-api/extensionType/5001
ϢʔβʔใAPIUserID͘͠EthereumΞυϨεͰϢʔβʔΛݕࡧhttps://www.mycryptoheroes.net/experimental-api/proxy/mch/users/10001https://www.mycryptoheroes.net/experimental-api/proxy/mch/users/0xd868711BD9a2C6F1548F5f4737f71DA67d821090ޙऀEthreaumΞυϨεΛެ։͍ͯ͠Δ߹ͷΈ༗ޮ
MCHใऔಘܥAPIΠϝʔδਤؑότϧγϡϛϨʔλʔͳͲ
MarkingContract
Ethereum্ͰϢʔβʔใΛ͏ʮϢʔβʔใʯ͋͘·ͰΦϑνΣʔϯͷใEthereum্ͰใΛѻ͏͜ͱ͕Ͱ͖ͳ͍ϢʔβʔͷҙͰEthereum্ͷεϚʔτίϯτϥΫτใΛॻ͖ࠐΈͰ͖ΔػೳΛՃMarkingContractʢԾশʣΛσϓϩΠࡁΈ։࢝࣌Ͱ50ਓҎ্ͷϢʔβʔ͕ެ։͍ͯ͠Δ
MarkingContractʢԾশʣhttps://etherscan.io/address/0x0085C150c1eb0e084E50a80beA91bc414AA6cbaaΦϑνΣʔϯͷϢʔβʔใΛهͨ͠ίϯτϥΫτ͋ΔEthereumΞυϨεͷϢʔβʔใɺPrime༗ແɺLandॴଐใ͕औಘͰ͖ΔϥϯυॴଐऀͷΞυϨεҰཡऔಘՄೳ
MarkingContractར༻Πϝʔδಁ໌ੑͷ͋ΔநબίϯτϥΫτϥϯυϝϯόʔઐ༻ϖʔδMarkingContractʹใΛ͢͜ͱͰʓʓ͕Ͱ͖Δͱ͍͏ҊܴGitHubʹιʔείʔυެ։ࡁΈ
֦ுMetadata
Ձ༰MetadataͰࢀরͰ͖ΔΞηοτͷMetadataΛՃͰ͖Δ͜ͱͰɺMCHӡӦҎ֎͕ՁΛ༩Ͱ͖ΔՁ͕Ξηοτʹू·Δ͜ͱͰɺ༷ʑͳαʔϏεͷHubʹͳΔΞηοτ͕ܧଓՄೳͳͷͱͯ͠ՁΛ࣋ͭΑ͏ʹ
Plus Meta APIʢԾশʣʮΞηοτͷՁ༰MetadataͰࢀরͰ͖Δʯͱ͍͏ߟ͑ʹج͖ͮɺʮՁ༰ΛMetadataͱͯ͠ొͰ͖ΔʯAPI͜͜ͰMCHҰͭͷMetadataͰ͔͠ͳ͍
Plus Meta APIొPOST https://www.mycryptoheroes.net/experimental-api/plusmeta/heroes/50010001{"iss": "0xd868711BD9a2C6F1548F5f4737f71DA67d821090","metadata": {"sub": "my crypto derbies","aud": ["https://example.com/"],"name": "deeeeep blue","description": "͍͢͝","attributes": {"hp": 100,"speed": 100,"skill": ["dart","sunny"],"kind": "Mare"}}}
Plus Meta APIऔಘGET https://www.mycryptoheroes.net/experimental-api/plusmeta/heroes/50010001
Plus Meta APIར༻ΠϝʔδMCHΞηοτΛͬͨϛχήʔϜͷ࡞ͱͦͷύϥϝʔλొΞηοτऔҾॴͳͲʹΑΔ৽ணใͷొ
࠶ҙࣄ߲͜͜Ͱհͨ͠ͷΛඞͣΘͳ͚ΕͳΒͳ͍Θ͚Ͱ͋Γ·ͤΜɻҰ෦API͜ͷϋοΧιϯͷͨΊʹ࡞ͨ͠ͷͰ͢ɻ༧ࠂͳ͘มߋɺআ͞ΕΔ߹͕͋Γ·͢ɻGitHubʹެ։ࡁΈhttps://github.com/doublejumptokyo/mch-hackathonͨΓલͷઆ໌Βͳ͍୯ޠ͕ͰΔ͔͠Ε·ͤΜ͕ɺ͜ͷ͋ͱϝϯλʔͷํʑʹ࣭ͯ͠Έ͍ͯͩ͘͞ɻ