Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Reference — Subgraph queries · Boson Protocol
Skip to content

Subgraph queries

The Boson subgraph (one deployment per chain × env) indexes on-chain events into a GraphQL schema. The SDK and MCP both speak this schema; you can also query it directly with any GraphQL client.

For the endpoints, see Networks → Subgraph endpoints. For the eventing / indexing-lag model, see Concepts → Eventing & indexing.

Health-check

{
  _meta {
    block { number, hash }
    hasIndexingErrors
  }
}

Treat the subgraph as degraded if _meta.block.number falls more than ~20 blocks behind chain head, or if hasIndexingErrors == true.

Per-domain catalogue

accounts

Source: accounts/queries.graphql

Queries (9)
NameVariables
getAuthTokenIds($tokenIdSkip: Int $tokenIdFirst: Int $authTokenType: Int)
getBuyerByIdQuery($buyerId: ID! $fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter $includeExchanges: Boolean = false $includeFunds: Boolean = false $includeLogs: Boolean = false)
getBuyersQuery($buyersSkip: Int $buyersFirst: Int $buyersOrderBy: Buyer_orderBy $buyersOrderDirection: OrderDirection $buyersFilter: Buyer_filter $fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter $includeExchanges: Boolean = false $includeOffers: Boolean = false $includeFunds: Boolean = false $includeLogs: Boolean = false)
getConditionalCommitAuthorizedEventLogsQuery($conditionalCommitAuthorizedLogsSkip: Int $conditionalCommitAuthorizedLogsFirst: Int $conditionalCommitAuthorizedLogsOrderBy: ConditionalCommitAuthorizedEventLog_orderBy $conditionalCommitAuthorizedLogsOrderDirection: OrderDirection $conditionalCommitAuthorizedLogsFilter: ConditionalCommitAuthorizedEventLog_filter)
getDisputeResolverByIdQuery($disputeResolverId: ID! $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter $includeOffers: Boolean = false $includeLogs: Boolean = false)
getDisputeResolversQuery($disputeResolversSkip: Int $disputeResolversFirst: Int $disputeResolversOrderBy: DisputeResolver_orderBy $disputeResolversOrderDirection: OrderDirection $disputeResolversFilter: DisputeResolver_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter $includeOffers: Boolean = false $includeLogs: Boolean = false)
getOfferCollectionsQuery($offerCollectionsSkip: Int $offerCollectionsFirst: Int $offerCollectionsOrderBy: OfferCollection_orderBy $offerCollectionsOrderDirection: OrderDirection $offerCollectionsFilter: OfferCollection_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $includeOffers: Boolean = false)
getSellerByIdQuery($sellerId: ID! $fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter $includeExchanges: Boolean = false $includeOffers: Boolean = false $includeFunds: Boolean = false $includeLogs: Boolean = false)
getSellersQuery($sellersSkip: Int $sellersFirst: Int $sellersOrderBy: Seller_orderBy $sellersOrderDirection: OrderDirection $sellersFilter: Seller_filter $fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter $includeExchanges: Boolean = false $includeOffers: Boolean = false $includeFunds: Boolean = false $includeLogs: Boolean = false)

Fragments (18): AuthTokenIdFields, BaseBuyerFields, BaseConditionalCommitAuthorizedEventLogsFields, BaseDisputeResolutionTermsEntityFields, BaseDisputeResolverFeeFields, BaseDisputeResolverFields, BaseOfferCollectionFields, BaseSellerFields, BuyerFields, DisputeResolverFields, OfferCollectionFields, PendingDisputeResolverFields, PendingSellerFields, SalesChannelFields, SellerContactLinkFields, SellerFields, SellerMetadataMediaFields, SellerSocialLinkFields

disputes

Source: disputes/queries.graphql

Queries (2)
NameVariables
getDisputeByIdQuery($disputeId: ID! $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $includeOffers: Boolean = false)
getDisputesQuery($disputesSkip: Int $disputesFirst: Int $disputesOrderBy: Dispute_orderBy $disputesOrderDirection: OrderDirection $disputesFilter: Dispute_filter)

Fragments (2): BaseDisputeFields, DisputeFields

erc20

Source: erc20/queries.graphql

Queries (2)
NameVariables
getExchangeTokenByIdQuery($exchangeTokenId: ID! $exchangeTokensSkip: Int $exchangeTokensFirst: Int $exchangeTokensOrderBy: ExchangeToken_orderBy $exchangeTokensOrderDirection: OrderDirection $exchangeTokensFilter: ExchangeToken_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter $includeOffers: Boolean = false $includeFunds: Boolean = false)
getExchangeTokensQuery($exchangeTokensSkip: Int $exchangeTokensFirst: Int $exchangeTokensOrderBy: ExchangeToken_orderBy $exchangeTokensOrderDirection: OrderDirection $exchangeTokensFilter: ExchangeToken_filter $offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $includeOffers: Boolean = false $fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter $includeFunds: Boolean = false)

Fragments (2): BaseExchangeTokenFields, ExchangeTokenFields

event-logs

Source: event-logs/queries.graphql

Queries (1)
NameVariables
getEventLogsQuery($logsSkip: Int $logsFirst: Int $logsOrderBy: EventLog_orderBy $logsOrderDirection: OrderDirection $logsFilter: EventLog_filter)

Fragments (1): BaseEventLogFields

exchanges

Source: exchanges/queries.graphql

Queries (3)
NameVariables
getExchangeByIdQuery($exchangeId: ID!)
getExchangesQuery($exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter)
getNonListedOfferVoidedQuery($nonListedOfferVoidedsSkip: Int $nonListedOfferVoidedsFirst: Int $nonListedOfferVoidedsOrderBy: NonListedOfferVoided_orderBy $nonListedOfferVoidedsOrderDirection: OrderDirection $nonListedOfferVoidedsFilter: NonListedOfferVoided_filter)

Fragments (3): BaseExchangeFields, ExchangeFields, NonListedOfferVoidedFields

funds

Source: funds/queries.graphql

Queries (2)
NameVariables
getFunds($fundsSkip: Int $fundsFirst: Int $fundsOrderBy: FundsEntity_orderBy $fundsOrderDirection: OrderDirection $fundsFilter: FundsEntity_filter)
getFundsById($fundsId: ID!)

Fragments (2): BaseFundsEntityFields, FundsEntityFields

groups

Source: groups/queries.graphql

No queries.

Fragments (1): BaseConditionFields

metadata

Source: metadata/queries.graphql

Queries (11)
NameVariables
getAllProductsWithNotVoidedVariantsQuery($productsSkip: Int $productsFirst: Int $productsOrderBy: ProductV1Product_orderBy $productsOrderDirection: OrderDirection $productsFilter: ProductV1Product_filter)
getBaseMetadataEntitiesQuery($metadataSkip: Int $metadataFirst: Int $metadataOrderBy: BaseMetadataEntity_orderBy $metadataOrderDirection: OrderDirection $metadataFilter: BaseMetadataEntity_filter)
getBaseMetadataEntityByIdQuery($metadataId: ID! $metadataSkip: Int $metadataFirst: Int $metadataOrderBy: BaseMetadataEntity_orderBy $metadataOrderDirection: OrderDirection $metadataFilter: BaseMetadataEntity_filter)
getBundleMetadataEntitiesQuery($metadataSkip: Int $metadataFirst: Int $metadataOrderBy: BundleMetadataEntity_orderBy $metadataOrderDirection: OrderDirection $metadataFilter: BundleMetadataEntity_filter)
getBundleMetadataEntityByIdQuery($metadataId: ID! $metadataSkip: Int $metadataFirst: Int $metadataOrderBy: BundleMetadataEntity_orderBy $metadataOrderDirection: OrderDirection $metadataFilter: BundleMetadataEntity_filter)
getProductV1BrandsQuery($brandsSkip: Int $brandsFirst: Int $brandsOrderBy: ProductV1Brand_orderBy $brandsOrderDirection: OrderDirection $brandsFilter: ProductV1Brand_filter)
getProductV1CategoriesQuery($categoriesSkip: Int $categoriesFirst: Int $categoriesOrderBy: ProductV1Category_orderBy $categoriesOrderDirection: OrderDirection $categoriesFilter: ProductV1Category_filter)
getProductV1MetadataEntitiesQuery($metadataSkip: Int $metadataFirst: Int $metadataOrderBy: ProductV1MetadataEntity_orderBy $metadataOrderDirection: OrderDirection $metadataFilter: ProductV1MetadataEntity_filter)
getProductV1MetadataEntityByIdQuery($metadataId: ID! $metadataSkip: Int $metadataFirst: Int $metadataOrderBy: ProductV1MetadataEntity_orderBy $metadataOrderDirection: OrderDirection $metadataFilter: ProductV1MetadataEntity_filter)
getProductV1ProductsQuery($productsSkip: Int $productsFirst: Int $productsOrderBy: ProductV1Product_orderBy $productsOrderDirection: OrderDirection $productsFilter: ProductV1Product_filter)
getProductV1ProductsWithVariantsQuery($productsSkip: Int $productsFirst: Int $productsOrderBy: ProductV1Product_orderBy $productsOrderDirection: OrderDirection $productsFilter: ProductV1Product_filter)

Fragments (23): BaseAnimationMetadataFields, BaseBaseMetadataEntityFields, BaseBundleMetadataEntityFields, BaseMetadataEntityFields, BaseProductV1BrandFields, BaseProductV1CategoryFields, BaseProductV1ExchangePolicyFields, BaseProductV1MediaFields, BaseProductV1MetadataEntityFields, BaseProductV1PersonalisationFields, BaseProductV1ProductFields, BaseProductV1ProductOverridesFields, BaseProductV1ProductWithNotVoidedVariantsFields, BaseProductV1ProductWithVariantsFields, BaseProductV1SectionFields, BaseProductV1SellerContactLinkFields, BaseProductV1SellerFields, BaseProductV1ShippingJurisdictionFields, BaseProductV1ShippingOptionFields, BaseProductV1TagFields, BaseProductV1VariationFields, BundleMetadataEntityFields, ProductV1MetadataEntityFields

offers

Source: offers/queries.graphql

Queries (3)
NameVariables
getOfferByIdQuery($offerId: ID! $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $includeExchanges: Boolean = false)
getOffersMediaQuery($offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $includeExchanges: Boolean = false)
getOffersQuery($offersSkip: Int $offersFirst: Int $offersOrderBy: Offer_orderBy $offersOrderDirection: OrderDirection $offersFilter: Offer_filter $exchangesSkip: Int $exchangesFirst: Int $exchangesOrderBy: Exchange_orderBy $exchangesOrderDirection: OrderDirection $exchangesFilter: Exchange_filter $includeExchanges: Boolean = false)

Fragments (3): BaseOfferFields, BaseRangeFields, OfferFields

search

Source: search/queries.graphql

Queries (1)
NameVariables
searchProductsQuery($productsSkip: Int $productsFirst: Int $productsOrderBy: ProductV1Product_orderBy $productsOrderDirection: OrderDirection $productsFilter: ProductV1Product_filter)

Fragments (1): ProductSearchResultFields

Source

Related