Ask or search…




Returns a single Pet according to its id.
pet(id: ID!): Pet


Returns multiple Pets according to the arguments passed.
skip: Int
first: Int
orderBy: PetOrderBy
orderDirection: OrderDirection
where: PetFilter
): [Pet]!

Object Types


The Pet object type contains the following fields:

Basic Information

  • id: ID - the Pet's ID. Crystalvale Pet IDs are padded by 1000000000000 (one trillion), and Serendale (Klaytn) IDs are padded by 2000000000000 (two trillion).
  • normalizedId: String - the ID that appears in-game without realm padding.
  • owner: Profile - the current owner of the Pet. Pets held in the PetAuction contract will still return the Profile of their owner.
  • previousOwner: Profile - the most immediate recent owner of the Pet. Will return null if the Pet has not changed wallets since hatching.
  • creator: Profile - the player who originally hatched the Pet
  • createdAt: Int - the Unix timestamp of the Pet's hatching
  • originId: Int - deprecated
  • originRealm: String - the origin realm of the Pet; returns SER1, CRY, or SER2
  • currentRealm: String - the current realm of the Pet; returns SER1, CRY, or SER2
  • name: String - not currently in use
  • season: Int - returns the Pet's Season number
  • eggType: Int - returns 0 for Blue Egg and 1 for Grey Egg. The Pet's eggType determines the type of Profession Bonus that it will receive.
  • rarity: Int - maps from 0 (Common) to 4 (Mythic)
  • element: Int - maps from 0 to 7 - multiply by 2 and use the Hero element mapping. The Pet's element determines the type of Crafting Bonus that it may receive.
  • appearance: Int - a mapping of the appearance of the Pet; combines with eggType and season to determine Name, Variant, Family, and other details
  • background: Int - a mapping of the background image for the Pet
  • shiny: Boolean - whether the Pet card is Shiny or not


Until specific bonuses are implemented, the number of stars on the Pet card maps as follows for the Rarity of each bonus:
  • 0: no stars / no bonus
  • 1: 1 star / Common bonus
  • 80: 2 stars / Rare bonus
  • 160: 3 stars / Mythic bonus
The three Scalar fields for craftBonus and combatBonus are not currently in use, but will indicate the scale of the specific bonus.
  • bonusCount: Int - the number of bonuses that the Pet received
The profBonus field is padded by 10000 * eggType, as outlined here.
  • profBonus: Int
  • profBonusScalar: Int
The craftBonus field is padded by 10000 * element, as outlined here.
  • craftBonus: Int
  • craftBonusScalar: Int
  • combatBonus: Int
  • combatBonusScalar: Int

Pet State

  • hungryAt: Int - the Unix timestamp when the Pet will need to be fed to provide its bonuses to a Hero; not currently in use
  • equippableAt: Int - the Unix timestamp when the Pet will be available for equipping to a Hero; not currently in use
  • equippedTo: Hero - the Hero that the Pet is equipped to; not currently in use
  • fedBy: Profile - the Profile that last fed the Pet
  • foodType: Int - range of 0-4, indicating Pet Treat Type (0: Regular; 1: Premium), and presence of the Premium Provisions Power-Up (2: Regular + PU; 3: Premium + PU)

Auction Details

  • saleAuction: PetAuction - if the Pet has been placed for Sale, returns the corresponding PetAuction
  • salePrice: String - if the Pet has been placed for Sale, returns the Sale price in wei
  • privateAuctionProfile: Profile - if the Pet has been placed for Private Sale, returns the corresponding Profile of the future buyer


Example 1

All Uncommon Pets hatched from Grey Eggs with a two-star Armorsmithing bonus:
pets(where: {eggType: 1, element: 2, craftBonus: 80}) {

Example 2

All Pets from the Penguin family (by eggType/Appearance) with the "Vithraven Outskirts" background, sorted by ascending Sale Price:
pets(orderBy: salePrice, where: {eggType: 0, appearance_in: [19, 60, 61, 62, 63, 88, 101, 126], background: 3}) {
owner {

Example 3

The 10 lowest-priced Rare Pets for Sale, sorted by ascending Sale Price:
pets(first:10, orderBy:salePrice, where: {rarity: 2, salePrice_not:null}) {
Because Auction and PetAuction queries can't filter on subfields of tokenId, use complex Heroes and Pets queries with a salePrice_not: null filter instead.
Last modified 4mo ago