Dokumentasi API pengembang publik untuk Gods Unchained, permainan kartu perdagangan di blockchain Ethereum.
Versi API ini ( v0
) masih dalam versi beta publik terbatas: jika Anda menemukan bug, atau api memberikan hasil yang bertentangan dengan spesifikasi, laporkan di sini. Spesifikasi kesalahan akan segera ditambahkan.
Berikut adalah beberapa alat pihak ketiga yang dibuat menggunakan API ini, pastikan untuk bertanya di server Discord kami jika Anda mencari bantuan atau ingin tahu apa yang harus dibuat.
Url dasar untuk semua permintaan adalah:
https://api.godsunchained.com
URL ini harus diakhiri dengan versi yang diminta (versi saat ini: v0
).
https://api.godsunchained.com/v0/
Kami mendukung pertanyaan dalam bentuk berikut:
https://api.godsunchained.com/v0/card?god=nature&god=death
Kunci argumen duplikat akan ditafsirkan secara terpisah: kueri ini akan mengembalikan kartu yang dewanya adalah alam ATAU kematian.
Semua permintaan yang dapat mengembalikan banyak objek dapat dibentuk oleh parameter page
dan perPage
.
https://api.godsunchained.com/v0/proto?page=3&perPage=20
Semua titik akhir yang diberi nomor halaman mengembalikan data dalam format berikut:
{
total: number
page: number
perPage: number
records: Array<any>
}
Dimana total
adalah jumlah record yang ditemukan oleh query ini.
Pengurutan diterapkan ke titik akhir yang diberi nomor halaman menggunakan parameter kueri sort
dan order
:
https://api.godsunchained.com/v0/card?sort=mana&order=asc
Jenis rentang dan nomor dapat diurutkan berdasarkan order=asc
dan order=desc
, defaultnya adalah asc
.
Beberapa parameter pengurutan dapat diterapkan dalam satu kueri, dan akan diterapkan secara berurutan:
https://api.godsunchained.com/v0/card?sort=mana&order=asc&sort=health&order=desc
Untuk kueri tanpa pasangan parameter pengurutan dan urutan yang tepat (di mana beberapa parameter diterapkan), urutannya perlu ditandai sebagai null
:
https://api.godsunchained.com/v0/card?sort=mana&order=asc&sort=god&order=null&sort=health&order=desc
Saat ini, terdapat batas kecepatan 5 per detik (5/dtk) di semua titik akhir. Hal ini mungkin berubah di masa depan.
Tipe umum:
Jenis | Keterangan |
---|---|
String yang dikodekan url. | |
Angka desimal. | |
true atau false |
Jenis API khusus:
Jenis | Keterangan |
---|---|
Alamat Ethereum heksadesimal, tidak peka huruf besar-kecil. | |
Angka tertentu 1000 , rentang 1000-2000 , minimum 1000- atau maksimum -2000 . |
Opsi yang valid untuk tipe enumerasi di berbagai api ditetapkan di bawah ini:
Jenis | Pilihan |
---|---|
cahaya, kematian, alam, perang, sihir, penipuan | |
langka, epik, legendaris, berkilau | |
umum, langka, epik, legendaris, mitis | |
makhluk, mantra, senjata | |
nether, aether, atlantean, viking, olympian, anubian, amazon | |
polos, bayangan, emas, berlian | |
penuh, kartu |
Ada beberapa 'jenis' kartu di Gods Unchained:
Beberapa dari titik akhir ini mengembalikan kombinasi di atas, sementara beberapa lainnya tidak: hal ini didokumentasikan oleh masing-masing titik akhir. Secara umum, defaultnya adalah mengembalikan hanya kartu yang dapat menjadi token ERC721 (yaitu kartu Token dan Model).
Kartu prototipe , atau protos , berisi statistik yang mendasari suatu kelas kartu.
Metode | Keterangan | Status |
---|---|---|
/card/{id} | Dapatkan kartu | |
/card | Daftar kartu | |
/proto/{id} | Dapatkan protonya | |
/proto | Daftar proto | |
/factory/{address} | Dapatkan pabrik | |
/factory | Dapatkan daftar pabrik | |
/factory/{address}/purchase/{id} | Dapatkan pembelian | |
/purchase | Daftar pabrik | |
/factory/{address}/purchase/{id}/pack/{index} | Dapatkan paket | |
/pack | Daftar paket | |
/referral | Dapatkan daftar referensi | |
/image/{id} | Dapatkan gambar | |
/user/{address} | Dapatkan pengguna | |
/ranking | Daftarkan pengguna yang diberi peringkat berdasarkan kartu yang dimiliki | |
/rarity | Dapatkan statistik kelangkaan | |
/user/{address}/inventory | Dapatkan inventaris pengguna | |
/deck | Encode dek menjadi string dek | |
/deck/{string} | Decode dek dari string dek |
Parameter
Nama | Jenis | Keterangan |
---|---|---|
pengenal | ERC721 id kartu |
Mengembalikan kartu token dengan id id
dan metadata yang sesuai. Saat ini sesuai dengan spesifikasi metadata generik dan Apollo.
Mengembalikan daftar token dan kartu model.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
user | dapatkan kartu yang dimiliki oleh alamat tertentu | |
rarity | dapatkan kartu dengan kelangkaan tertentu | |
quality | dapatkan kartu dengan kualitas tertentu | |
god | dapatkan kartu dengan dewa tertentu | |
type | mendapatkan kartu dengan tipe tertentu | |
tribe | mendapatkan kartu dengan suku tertentu | |
purity | dapatkan kartu dengan kemurnian tertentu | |
mana | dapatkan kartu dengan mana tertentu | |
health | dapatkan kartu dengan kesehatan tertentu | |
attack | mendapatkan kartu dengan serangan tertentu | |
proto | dapatkan kartu dengan id prototipe tertentu |
Format Respons
{
"total": 1000,
"page": 1,
"perPage": 1,
"records": [
{
"id": {
"Int64": 0,
"Valid": false,
}
"proto": 319,
"purity": 59,
"user": "0xCb3562Dd15807e2BCF35092B1e873971AF0a51da"
}
]
}
Mengembalikan kartu prototipe dengan id id
.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
id | id kartu prototipe |
Format Respons
{
"id":300,
"name":"Guerilla Sabotage",
"effect":"Deal 4 damage to a random enemy creature. Draw a card.",
"god":"Nature",
"rarity":"Common",
"tribe":{"String":"","Valid":false},
"mana":4,
"attack":{"Int64":0,"Valid":false},
"health":{"Int64":0,"Valid":false},
"type":"Spell"
}
Mengembalikan daftar kartu prototipe.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
god | dapatkan proto dengan dewa tertentu | |
rarity | dapatkan proto dengan kelangkaan tertentu | |
type | dapatkan proto dengan tipe tertentu | |
tribe | dapatkan proto dengan suku tertentu | |
set | dapatkan proto dengan set tertentu | |
collectable | mendapatkan proto yang dapat dikoleksi atau tidak | |
mana | dapatkan proto dengan mana tertentu | |
health | dapatkan proto dengan kesehatan tertentu | |
attack | dapatkan proto dengan serangan tertentu |
Format Respons
{
"total": 380,
"page": 1,
"perPage: 1,
"records": [
{
"id":300,
"name":"Guerilla Sabotage",
"effect":"Deal 4 damage to a random enemy creature. Draw a card.",
"god":"Nature",
"rarity":"Common",
"tribe":{"String":"","Valid":false},
"mana":4,
"attack":{"Int64":0,"Valid":false},
"health":{"Int64":0,"Valid":false},
"type":"Spell"
}
]
}
Mengembalikan paket pabrik di address
alamat.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
address | alamat pabrik |
Format Respons
{
"address":"0x0777f76d195795268388789343068e4fcd286919",
"type":"rare"
}
Mengembalikan daftar pabrik paket.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
type | jenis paket |
Format Respons
{
"total": 4,
"page": 1,
"perPage: 1,
"records": [
{
"address":"0x0777f76d195795268388789343068e4fcd286919",
"type":"rare"
}
]
}
Mengembalikan id
pembelian dari pabrik paket di address
.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
address | alamat pabrik | |
id | id pembelian di dalam pabrik |
Format Respons
{
"id":0,
"user":"0x3882C6ba6475165aC5257Ddc1D8d7782E7805c28",
"count":1,
"remaining":0,
"factory":"0x000983ba1A675327F0940b56c2d49CD9c042DFBF",
"txhash":"0xda2b2956588bd642bed4b0aa8f63c979f4893662dd31c237aa58b173bf4eb223",
"type":"shiny"
}
Mengembalikan daftar pembelian.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
type | dapatkan pembelian dari jenis paket tertentu | |
user | mendapatkan pembelian yang dilakukan oleh pengguna tertentu | |
factory | mendapatkan pembelian yang dilakukan di pabrik tertentu | |
remaining | jumlah paket yang tersisa untuk diaktifkan dari pembelian ini | |
count | jumlah paket yang dibeli dalam pembelian ini |
Format Respons
{
"total": 1000,
"page": 1,
"perPage: 1,
"records": [
{
"id":0,
"user":"0x3882C6ba6475165aC5257Ddc1D8d7782E7805c28",
"count":1,
"remaining":0,
"factory":"0x000983ba1A675327F0940b56c2d49CD9c042DFBF",
"txhash":"0xda2b2956588bd642bed4b0aa8f63c979f4893662dd31c237aa58b173bf4eb223",
"type":"shiny"
}
]
}
Mengembalikan paket dengan index
indeks dari id
pembelian dari pabrik paket dengan address
alamat.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
address | alamat pabrik paket | |
id | ID pembelian | |
index | indeks paket dalam pembelian |
Format Respons
{
"purchaseid":11665,
"purchaseindex":0,
"purchaseindices":[0,1,2,3,4],
"user":"0x62ed0960478Cd1aAA29e9e94928107D7b1E2Cef8",
"factory":"0x0777F76D195795268388789343068e4fCd286919",
"opened":true,
"cards":[
{"proto":264,"purity":600},
{"proto":38,"purity":990},
{"proto":299,"purity":549},
{"proto":347,"purity":275},
{"proto":291,"purity":850}
],
"type":"rare"
}
Mengembalikan daftar paket.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
type | mendapatkan paket dengan tipe tertentu | |
user | dapatkan paket yang dibeli oleh pengguna tertentu | |
factory | dapatkan paket yang dibuat oleh pabrik tertentu | |
purchase | dapatkan paket yang dibuat dalam pembelian tertentu | |
opened | apakah paket ini sudah dibuka | |
fill | apakah akan mengisi paket ini dengan kartu mereka |
Format Respons
{
"total": 1000,
"page": 1,
"perPage: 1,
"records": [
{
"purchaseid":11665,
"purchaseindex":0,
"purchaseindices":[0,1,2,3,4],
"user":"0x62ed0960478Cd1aAA29e9e94928107D7b1E2Cef8",
"factory":"0x0777F76D195795268388789343068e4fCd286919",
"opened":true,
"cards":[
{"proto":264,"purity":600},
{"proto":38,"purity":990},
{"proto":299,"purity":549},
{"proto":347,"purity":275},
{"proto":291,"purity":850}
],
"type":"rare"
}
]
}
Mengembalikan daftar referensi.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
type | dapatkan referensi dengan kelangkaan tertentu | |
referrer | mendapatkan referensi yang dibuat oleh pengguna tertentu | |
purchaser | dapatkan referensi yang dibuat untuk pengguna tertentu | |
factory | mendapatkan referensi yang dibuat di pabrik tertentu |
Format Respons
{
"total": 1000,
"page": 1,
"perPage: 1,
"records": [
{
"id":0,
"referrer":"0xb08F95dbC639621DbAf48A472AE8Fce0f6f56a6e",
"purchaser":"0xE4a8dfcA175cDcA4Ae370f5b7aaff24bD1C9C8eF",
"factory":"0x1e891C587b345ab02A31b57c1F926fB08913d10D",
"value":1746000000000000000,
"count":0,
"type":"shiny"
}
]
}
Mengembalikan gambar berdasarkan prototipe kartu dengan id id
. Untuk mendapatkan gambar dalam bentuk kartu, gunakan parameter format
dan quality
.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
format | format di mana gambar harus disajikan | |
h | ketinggian gambar yang akan diubah ukurannya | |
w | lebar gambar yang akan diubah ukurannya | |
quality | kualitas kartunya |
Dapatkan pengguna.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
address | alamat Ethereum pengguna |
Format Respons
{
"username": "ender",
"address": "0xC257274276a4E539741Ca11b590B9447B26A8051",
"nonce": 0
}
Untuk membantu membangun aplikasi yang lebih efektif bagi ekosistem kami, kami juga menyediakan beberapa titik akhir API yang berguna. Titik akhir ini mungkin tidak digunakan lagi pada rilis mendatang, karena dapat disusun dari titik akhir yang sudah ada, namun menyediakan antarmuka yang mudah digunakan selama pengembangan aplikasi baru yang berfokus pada GU.
Mengembalikan daftar pengguna yang diurutkan dengan kartu terbanyak yang memenuhi ketentuan tertentu.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
rarity | dapatkan peringkat kartu dengan kelangkaan tertentu | |
quality | mendapatkan peringkat kartu dengan kualitas tertentu | |
god | dapatkan peringkat kartu dengan dewa tertentu | |
type | mendapatkan peringkat kartu dengan tipe tertentu | |
tribe | mendapatkan peringkat kartu dengan suku tertentu | |
purity | mendapatkan peringkat kartu dengan batas kemurnian minimum | |
mana | dapatkan peringkat kartu dengan mana tertentu | |
health | dapatkan peringkat kartu dengan kesehatan tertentu | |
attack | dapatkan peringkat kartu dengan serangan tertentu | |
proto | dapatkan peringkat kartu dengan id prototipe tertentu |
Format Respons
{
"total": 10000,
"page": 1,
"perPage": 1,
"records": [
{
"user": "0xa012623C2d4EB0cfe921Bd283bb1823370Ae2737",
"count": 1585
}
]
}
Mengembalikan informasi kelangkaan tentang proto.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
user | dapatkan info kelangkaan tentang kartu yang dimiliki oleh alamat tertentu | |
rarity | dapatkan info kelangkaan tentang kartu dengan kelangkaan tertentu | |
quality | dapatkan info kelangkaan tentang kartu dengan kualitas tertentu | |
god | dapatkan info kelangkaan tentang kartu dengan dewa tertentu | |
type | mendapatkan info kelangkaan tentang kartu dengan tipe tertentu | |
tribe | dapatkan info kelangkaan tentang kartu dengan suku tertentu | |
purity | dapatkan info kelangkaan tentang kartu dalam kisaran kemurnian | |
mana | dapatkan info kelangkaan tentang kartu dalam rentang mana | |
health | dapatkan info kelangkaan tentang kartu dalam rentang kesehatan | |
attack | dapatkan info kelangkaan tentang kartu dengan jangkauan serangan | |
proto | ` | dapatkan info kelangkaan tentang kartu dengan id prototipe tertentu |
Opsi Sortir
proto
, plain
, shadow
, gold
, diamond
Format Respons
{
"total": 380,
"page": 1,
"perPage": 1,
"records": [
{
"proto": 1,
"plain": 1325,
"shadow": 72,
"gold": 20,
"diamond": 3
}
]
}
Mengembalikan inventaris pengguna dengan address
alamat, termasuk token, bayangan, dan kartu terpusat.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
rarity | dapatkan kartu dengan kelangkaan tertentu | |
quality | dapatkan kartu dengan kualitas tertentu | |
god | dapatkan kartu dengan dewa tertentu | |
type | mendapatkan kartu dengan tipe tertentu | |
tribe | mendapatkan kartu dengan suku tertentu | |
purity | dapatkan kartu dalam kisaran kemurnian | |
mana | dapatkan kartu dalam rentang mana | |
health | dapatkan kartu dalam rentang kesehatan | |
attack | dapatkan kartu dengan jangkauan serangan | |
proto | dapatkan kartu dengan id prototipe tertentu |
Format Respons
{
"total": 380,
"page": 1,
"perPage": 1,
"records": [
{
"proto": 1,
"purities": [
"100", "200", "300", "2999"
]
}
]
}
DeckStrings adalah standar yang nyaman untuk memungkinkan aplikasi mengimpor dan mengekspor deck. API berikut menyediakan antarmuka yang mudah digunakan untuk pengoperasian string dek dasar.
Mengkodekan dek menjadi string dek.
Badan Permintaan
{
"version": 1,
"god": "deception",
"protos": [
290, 17, 201, 201, 80, 80, 93, 93, 64, 64, 185, 185, 55, 55, 97, 331, 281, 281, 252, 252, 330,
330, 280, 202, 202, 265, 265, 37, 94, 94
]
}
Format Respons
AQYBBhElYZgCogLLAgIMN0BQXV65AckBygH8AYkCmQLKAg==
Mendekode dek dari string dek.
Parameter
Format Respons
{
"version": 1,
"god": "deception",
"protos": [
290, 17, 201, 201, 80, 80, 93, 93, 64, 64, 185, 185, 55, 55, 97, 331, 281, 281, 252, 252, 330,
330, 280, 202, 202, 265, 265, 37, 94, 94
]
}
Daftar mode permainan dengan beberapa properti.
Format Respons
[
{
"id": 2,
"name": "Constructed",
"description": "Classic Contructed",
"live": true,
"required_level": 0,
"properties": {
"type": 4,
"image_url": "https://images.godsunchained.com/misc/classic_constructed.webp"
}
}
]
Tunjukkan hasil pertandingan
Parameter
Nama | Jenis | Keterangan |
---|---|---|
start_time | waktu mulai pertandingan (format zaman UNIX) | |
end_time | waktu akhir pertandingan (format zaman UNIX) | |
player_won | user_id pemain | |
player_lost | user_id pemain | |
game_mode | pengidentifikasi mode_permainan |
Penting : bidang total_turns akan diganti namanya menjadi total_rounds pada pembaruan selanjutnya, kami akan terus mendukungnya sambil memastikan komunitas kami menggunakan nama bidang baru.
Format Respons
{
"total": 1447,
"page": 1,
"perPage": 20,
"records": [
{
"player_won": 9127,
"player_lost": 6008,
"game_mode": 2,
"game_id": "b64865e2-682b-4a23-af11-20aad0cfd47c",
"start_time": 1560734177,
"end_time": 1560734355,
"player_info": [{"god":"nature","cards":[301,121,68,237,976,1000,973,523,910,385,494,467,905,519,907,507,919,916,906,442,386,537,471,928,475,906,454,909,945,920],"global":false,"health":30,"status":"connected","user_id":9127},{"god":"Magic","cards":[401,401,404,404,908,908,455,455,535,535,467,467,926,926,981,981,402,402,504,504,396,396,406,406,983,983,407,407,1002,1002],"global":true,"health":0,"status":"connected","user_id":6008}],
"total_turns": 6,
"total_rounds": 6
}
]
}
Tampilkan peringkat pemain per mode permainan.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
user_id | ID Apollo pengguna | |
game_mode | Mode permainan peringkat |
Format Respons
{
"total": 543,
"page": 1,
"perPage": 20,
"records": [
{
"user_id": 9115,
"game_mode": 1,
"rating": 952,
"rank_level": 1,
"win_points": 82.849302,
"loss_points": 86.586029
},
{
"user_id": 2317,
"game_mode": 2,
"rating": 875.627936,
"rank_level": 1,
"win_points": 48.249483,
"loss_points": 89.55682
}
]
}
Tunjukkan properti para pemain.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
user_id | ID Apollo pengguna |
Format Respons
{
"total": 8298,
"page": 1,
"perPage": 20,
"records": [
{
"user_id": 612,
"xp_level": 0,
"total_xp": 0,
"xp_to_next": 25,
"won_matches": 0,
"lost_matches": 0,
"username": "bestplayer"
},
{
"user_id": 706,
"xp_level": 36,
"total_xp": 25850,
"xp_to_next": 350,
"won_matches": 51,
"lost_matches": 40,
"username": "broken_player"
}
]
}
Menghitung probabilitas pertandingan berdasarkan rating pemain (menggunakan algoritma rating Elo)
Parameter
Nama | Jenis | Keterangan |
---|---|---|
user_id | ID Apollo pengguna | |
opponent_id | ID Apollo dari lawan | |
game_mode | mode permainan pertandingan |
Format Respons
0.6717130465747431
Quality API menyediakan data tentang kualitas dan komposisi visualnya yang digunakan oleh sistem publik.
Menampilkan semua definisi kelas kualitas aktif dan informasi terkait. Terutama digunakan oleh sistem pendukung seperti hubungan nama dan id atau penggantian metadata.
Format Respons
[
{
"class_key": "quality",
"class_value": "2",
"class_properties": {
"name": "gold"
},
"class_type": "card",
"game_id": 1
},
...
]
Menampilkan definisi kelas kualitas yang ditentukan dan informasi terkait. Terutama digunakan oleh sistem pendukung seperti hubungan nama dan id atau penggantian metadata.
Parameter
Nama | Jenis | Keterangan |
---|---|---|
quality | ID Kualitas |
Format Respons
{
"class_key": "quality",
"class_value": "2",
"class_properties": {
"name": "gold"
},
"class_type": "card",
"game_id": 1
}
Menampilkan semua data komposisi grafis yang diperlukan untuk menghasilkan visual untuk proto tertentu dan kombinasi kualitas untuk seni NFT yang digunakan dalam Gods Unchained. Saat ini hanya mendukung seni Kartu.
Parameter
Nama | Jenis | Keterangan | Contoh |
---|---|---|---|
pairs | Proto dan Kualitas ditentukan dengan pemisah @ | 1234@5 |
Format Respons
[
{
"id": 1234,
"name": "Born Again",
"effect": "Pull a creature from your void to your hand. Give it +5/+5 and ward.",
"god": "light",
"rarity": "epic",
"tribe": { "String": "", "Valid": false },
"mana": 6,
"attack": { "Int64": 0, "Valid": false },
"health": { "Int64": 0, "Valid": false },
"type": "spell",
"set": "core",
"collectable": true,
"live": "true",
"art_id": "C448",
"lib_id": "L2-235",
"composition": {
"illustration": [
"1234"
],
"frame": [
"spell",
"spell_plain"
],
"rosette": [
"light",
"light_plain"
],
"gems": [
"rarity_epic"
],
"wreath": [],
"lock": [
"lock_plain"
],
"tribe_bar": [],
"set": [
"core"
]
}
}
]