Example Queries
Practical examples for common use cases with the Verse GraphQL API.
Browse Live Collections
Fetch collections with active primary market sales:
query LiveCollections {
explore(
filter: {
exploreTab: [LIVE]
market: [PRIMARY]
}
sorting: { sort: FEATURED_SCORE, direction: DESC }
first: 10
) {
nodes {
id
name
slug
blockchain
previewAsset {
... on ImageAsset { baseUrlTemplate } # baseUrlTemplate is a template — see "Displaying Images" below
}
artworks {
title
primaryMarketListing {
startsAt
endsAt
strategy {
... on PMBuyNowLimitedEditionStrategy {
price { value currency }
maxEditions
stats { issuedEditions }
}
... on PMBuyNowOpenEditionStrategy {
price { value currency }
stats { issuedEditions }
}
}
}
}
}
}
}
Get Collection Details by Slug
query CollectionBySlug($slug: String!) {
collectionsPage(request: {
filter: { slugs: [$slug] }
first: 1
}) {
nodes {
id
name
slug
description
blockchain
artists { name slug }
stats {
issuedEditions
ownersCount
floorPrice { value currency }
tradedVolume { value currency }
lastSalePrice { value currency }
}
artworks {
id
title
primaryMarketListing {
startsAt
endsAt
}
}
}
}
}
Fetch Project Items for an Artist-Curated Artwork
Query the curated set of items for an artist-curated project. Each item includes its availability, preview asset, and feature traits.
query ProjectItems($artworkId: ID!) {
artworksPage(request: {
filter: { ids: [$artworkId] }
first: 1
}) {
nodes {
id
title
artworkKind {
... on ProjectArtworkKind {
allowUserSelection
withRepetitions
projectItemsPage(first: 50) {
totalCount
pageInfo {
endCursor
hasNextPage
}
nodes {
id
isAvailable
featuresJson
staticAsset {
... on ImageAsset { baseUrlTemplate } # template URL — resolve before displaying
... on VideoAsset { baseUrlTemplate previewImageUrlTemplate } # baseUrlTemplate = video file; previewImageUrlTemplate = thumbnail template
}
}
}
}
}
primaryMarketListing {
startsAt
endsAt
strategy {
... on PMBuyNowLimitedEditionStrategy {
price { value currency }
maxEditions
stats { issuedEditions }
}
}
}
}
}
}
Key fields:
allowUserSelection— Whentrue, collectors can choose a specific item to purchase. Whenfalse, a random item is assigned.isAvailable— Whether the item can still be purchased (relevant for projects without repetitions).featuresJson— JSON string of trait/feature data for the item.
List Editions for an Artwork
Fetch editions with sorting and availability filtering:
query ArtworkEditions($artworkId: ID!) {
assetsPage(
filter: {
artworkIds: [$artworkId]
assetType: EDITION
}
sorting: { sort: EDITION_NUMBER, direction: ASC }
first: 50
) {
totalCount
pageInfo {
endCursor
hasNextPage
}
nodes {
id
asset {
... on Edition {
editionNumber
tokenId
hash
status
owner {
... on UserEditionOwner {
owner { username }
}
... on BlockchainAddressEditionOwner {
blockchainAddress { address }
}
}
features {
... on StringFeatureValue {
name
value
}
}
}
}
}
}
}