#Entities

#Project

Description: get various details about a specific project

FieldTypeDescription
idID!Unique identifier made up of contract address and project id
projectIdBigInt!ID of the project on the contract
activeBoolean!Determines if the project should be visible to the public
additionalPayeeBytesAddress to split primary sales with the artist
additionalPayeePercentageBigIntPercentage of artist's share of primary sales that goes to additional payee
additionalPayeeSecondarySalesAddressBytesAddress to split Secondary sales with the artist
additionalPayeeSecondarySalesPercentageBigIntPercentage of artist's share of secondary sales that goes to additional payee
artistAccount!Artist that created the project
artistAddressBytes!Wallet address of the artist
artistNameStringArtist name
baseIpfsUriStringUniform Resource Identifier Interplanetary File System (IPFS) of a nonfungible token
baseUriStringThe base URI is the mutual part among each NFT's URI. By default, the URI is baseURI/tokenId
completeBoolean!A project is complete when it has reached its maximum invocations
completedAtBigIntTimestamp at which a project was completed
curationStatusStringCurated, playground, factory. A project with no curation status is considered factory
currencyAddressBytesERC-20 contract address if the project is purchasable via ERC-20
currencySymbolStringCurrency symbol for ERC-20
descriptionStringArtist description of the project
dynamicBoolean!Is the project dynamic or a static image
invocationsBigInt!Number of times the project has been invoked - number of tokens of the project
ipfsHashStringInterplanetary File System function that meets the encrypted demands needed to solve for a blockchain computation
licenseStringLicense for the project
lockedBooleanFor V3 and-on, this field is null, and projects lock 4 weeks after completedAt. Once the project is locked its script may never be updated again
maxInvocationsBigInt!Maximum number of invocations allowed for the project
nameStringProject name
pausedBoolean!Purchases paused
pricePerTokenInWeiBigInt!Wei is the smallest denomination of ether—the cryptocurrency coin used on the Ethereum network. One ether = 1,000,000,000,000,000,000 wei (1018)
royaltyPercentageBigIntArtist/additional payee royalty percentage
scriptStringThe full script composed of scripts
scriptsProject!Parts of the project script
scriptCountBigInt!The number of scripts stored on-chain
externalAssetDependencyCountBigInt!The number of external asset dependencies stored on-chain
externalAssetDependenciesLockedBoolean!Once the project's external asset dependencies are locked they may never be modified again
scriptJSONStringExtra information about the script and rendering options
scriptTypeAndVersionStringScript type and version (see scriptJSON if null)
aspectRatioStringAspect ratio of the project (see scriptJSON if null)
tokensToken!Tokens of the project
useHashStringBoolean!Does the project actually use the hash string
useIpfsBooleanDoes the project use media from ipfs
websiteStringArtist or project website
proposedArtistAddressesAndSplitsProposedArtistAddressesAndSplitProposed Artist addresses and payment split percentages
ownersAccountProject!Accounts that own tokens of the project
createdAtBigInt!When project initiated
updatedAtBigInt!When project updated
activatedAtBigIntWHen project activated
scriptUpdatedAtBigIntwhen the script was updated
contractContract!Contract associated to project
minterConfigurationProjectMinterConfigurationMinter configuration for this project (not implemented prior to minter filters)
saleLookupTablesSaleLookupTable!Lookup table to get the Sale history of the project
externalAssetDependenciesProjectExternalAssetDependency!Projects external asset dependencies

#ProjectScript

Description: get specific details of the project script

FieldTypeDescription
idID!Unique identifier made up of contract address and project id
indexBigInt!The dependency index
projectProject!Name of project
scriptString!Script of the project

#ProposedArtistAddressesAndSplit

Description: get specific details on the pay flow for a specified artist

FieldTypeDescription
idID!Unique identifier made up of contract address and project id
artistAddressBytes!Proposed artist address
additionalPayeePrimarySalesAddressBytes!Proposed artist additional payee address for primary sales
additionalPayeePrimarySalesPercentageBigInt!Proposed artist additional payee percentage for primary sales
additionalPayeeSecondarySalesAddressBytes!Proposed artist additional payee address for secondary sales
additionalPayeeSecondarySalesPercentageBigInt!Proposed artist additional payee percentage for secondary sales
projectProject!Project associated with this proposed artist addresses and splits
createdAtBigInt!When address initiated

#CoreRegistry

Description: Get specific details on the Art Blocks Core registry. At this time, this is used for indexing purposes of V3 contracts, as well as acting as an allowlist of core contracts that may mint on a shared minter filter.

FieldTypeDescription
idID!Unique identifier made up of the Core Registry's contract address. note: for legacy MinterFilters, this is a dummy ID, equal to the address of the single core contract associated with the minter filter
registeredContracts[Contract!]All core contracts that are registered on this CoreRegistry, when this is the most recent Core Registry to add the contract

#Contract

Description: get specific information about contracts

FieldTypeDescription
idID!Unique identifier made up of contract address
typeCoreType!Core contract type
renderProviderAddressBytes!Address that receives primary sales platform fees
renderProviderPercentageBigInt!Percentage of primary sales allocated to the platform
renderProviderSecondarySalesAddressBytesAddress that receives secondary sales platform royalties (null for pre-V3 contracts, check Royalty Registry)
renderProviderSecondarySalesBPSBigIntBasis points of secondary sales allocated to the platform (null for pre-V3 contracts, check Royalty Registry)
enginePlatformProviderAddressBytesAddress that receives primary sales platform fees, only for V3_Engine contracts
enginePlatformProviderPercentageBigIntPercentage of primary sales allocated to the platform, only for V3_Engine contracts
enginePlatformProviderSecondarySalesAddressBytesAddress that receives secondary sales platform royalties, only for V3_Engine contracts
enginePlatformProviderSecondarySalesBPSBigIntBasis points of secondary sales allocated to the platform, only for V3_Engine contracts
mintWhitelisted[Bytes!]!List of contracts that are allowed to mint
randomizerContractBytesRandomizer contract used to generate token hashes
curationRegistryBytesCuration registry contract address
dependencyRegistryBytesDependency registry contract address
nextProjectIdBigInt!Project ID listed on the contract
projectsProject!List of projects on the contract
tokensToken!List of tokens on the contract
whitelistedWhitelisting!Accounts whitelisted on the contract
createdAtBigInt!When contract initiated
updatedAtBigInt!When contract updated
minterFilterMinterFilterAssociated minter filter (if applicable)
preferredIPFSGatewayStringThe Engine Flex contract allows you to specify preferred gateways for the currently supported dependency types (IPFS & Arweave)
preferredArweaveGatewayStringThe Engine Flex contract allows you to specify preferred gateways for the currently supported dependency types (IPFS & Arweave)
newProjectsForbiddenBoolean!New projects forbidden (can only be true on V3+ contracts)
autoApproveArtistSplitProposalsBooleanAutomatically approve all artist split proposals (used on V3 Engine contracts)
registeredOnEngineRegistryLatest engine registry that this contract is registered with, if any (used for indexing purposes)

#Whitelisting

Description: get whitelist information

FieldTypeDescription
idID!Unique identifier whitelist account id
accountAccount!Account associated to whitelisting
contractContract!contract associated to whitelisting

#Account

Description: get specific information about an account

FieldTypeDescription
idID!Unique identifier account id
tokensToken!Tokens the account has
projectsOwnedAccountProject!Projects the account owns tokens from
projectsCreatedProject!Projects the account is listed as artist for
whitelistedOnWhitelisting!Contracts the account is whitelisted on

#AccountProject

Description: get project account information

FieldTypeDescription
idID!Unique identifier token id
accountAccount!Account associated to project
projectProject!Name of project
countInt!Total count of the project

#Token

Description: get various token information

FieldTypeDescription
idID!Unique identifier made up of contract address and token id
tokenIdBigInt!ID of the token on the contract
contractContract!Contract the token is on
invocationBigInt!Invocation number of the project
hashBytes!Unique string used as input to the tokens project script
ownerAccount!Current owner of the token
projectProject!Project of the token
uriStringSpecifies the endpoint for retrieving access tokens when OAuth 2.0 authentication is enabled
createdAtBigInt!When token initiated
updatedAtBigInt!When token updated
transactionHashBytes!Transaction hash of token mint
transfersTransfer!Transfers of the token
saleLookupTablesSaleLookupTable!Lookup table to get the Sale history
nextSaleIdBigInt!Next available sale id

#MinterFilter

Description: get details about minters on a project

FieldTypeDescription
idID!Unique identifier made up of minter contract address
minterGlobalAllowlist[Minter!]!Minters allowlisted globally on this MinterFilter
minterFilterContractAllowlists[MinterFilterContractAllowlist!]!Minters allowlisted at a contract-level on this MinterFilter
knownMintersMinter!Known minters that are tied to this MinterFilter, but are not necessarily approved on this MinterFilter
coreRegistryCoreRegistry!Core contract registry used by this MinterFilter. Note: For MinterFilter V0 and V1, a dummy CoreRegistry is used
updatedAtBigInt!When minter updated

#MinterFilterContractAllowlist

Description: Defines a contract-specific allowlist of minters specifically approved on a given shared minter filter. This is used to extend the set of allowlisted minters beyond a shared minter filter's set of globally allowlisted minters.

FieldTypeDescription
idID!Unique identifier made up of -
minterFilterMinterFilter!MinterFilter contract
contractContract!Core contract
minterContractAllowlist[Minter!]!Minter contract addresses allowed at the contract level (extending global MinterFilter allowlist)
updatedAtBigInt!When last updated

#Minter

Description: get details about mint on a project

FieldTypeDescription
idID!Unique identifier made up of minter contract address
typeMinterType!Minter type
minterFilterMinterFilter!Associated Minter Filter
isGloballyAllowlistedOnMinterFilterBoolean!Boolean representing if the Minter is globally allowed on its associated minter filter
extraMinterDetailsString!Configuration details used by specific minters (json string)
receipts[Receipt!]Receipts for this minter, only for minters with settlement
updatedAtBigInt!When the minter updated

#ProjectMinterConfiguration

Description: get details of a specific mint

FieldTypeDescription
idID!Unique identifier made up of --
projectProject!The associated project
minterMinter!The associated minter
priceIsConfiguredBoolean!true if project's token price has been configured on minter
currencySymbolString!currency symbol as defined on minter - ETH reserved for ether
currencyAddressBytes!currency address as defined on minter - address(0) reserved for ether
purchaseToDisabledBoolean!Defines if purchasing token to another is allowed
basePriceBigIntprice of token or resting price of Duch auction, in wei
extraMinterDetailsString!Configuration details used by specific minter project configurations (json string)
maxInvocationsBigIntMaximum number of invocations allowed for the project (on the minter)

#Receipt

Description: get details about purchases on a minter with settlement

FieldTypeDescription
idID!Unique identifier made up of ---
projectProject!The associated project
minterMinter!The associated minter
accountAccount!The associated account
netPostedBigInt!The total net amount posted (set to settlement contract) for tokens
numPurchasedBigInt!The total quantity of tokens purchased on the project
updatedAtBigInt!Last updated timestamp

#Transfer

Description: transfer info on an NFT

FieldTypeDescription
idID!Unique identifier of transfer
transactionHashBytes!transaction hash of transfer
tokenToken!token address of NFT
createdAtBigInt!when transfer initiated
toBytes!address transferred to
fromBytes!address transferred from

#ProjectExternalAssetDependency

Description: get info about projects external asset dependency

FieldTypeDescription
idID!Unique identifier made up of projectId-index
projectProject!The associated project
dependencyTypeProjectExternalAssetDependencyType!The dependency type
cidString!The dependency cid
indexBigInt!The dependency index

#Dependency

Description: information about registered dependency (e.g. p5js@1.0.0)

FieldTypeDescription
idID!Unique identifier made up of dependency name and version separated by an @ symbol (e.g. p5js@1.0.0)
preferredCDNString!Preferred CDN for this dependency
additionalCDNs[DependencyAdditionalCDN!]!Additional CDNs for this dependency
additionalCDNCountBigInt!Number of additional CDNs for this dependency
preferredRepositoryString!Preferred repository for this dependency
additionalRepositoryCountBigInt!Additional repositories for this dependency
additionalRepositories[DependencyAdditionalRepository!]!Number of additional repositories for this dependency
scripts[DependencyScript!]!List of on-chain scripts that for this dependency
scriptCountBigInt!Number of on-chain scripts for this dependency
scriptStringConcatenated string of all scripts for this dependency
referenceWebsiteString!Reference website for this dependency (e.g. https://p5js.org)
dependencyRegistryDependencyRegistry!Dependency registry contract that this dependency is registered on
updatedAtBigInt!Timestamp of last update

#DependencyRegistry

Description: information about a dependency registry contract

FieldTypeDescription
idBytes!Unique identifier made up of dependency registry contract address
supportedCoreContracts[Contract!]!Core contracts that this registry can provide dependency overrides for
dependencies[Dependency!]List of dependencies that are registered on this registry contract
ownerBytes!Current owner of this contract
updatedAtBigInt!Timestamp of last update

#DependencyAdditionalCDN

Description: information about an additional CDN for a dependency

FieldTypeDescription
idID!Unique identifier made up of dependency id and index
dependencyDependency!Dependency this additional CDN belongs to
cdnString!URL of the CDN
indexBigInt!Index of this additional CDN

#DependencyAdditionalRepository

Description: information about an additional repository for a dependency

FieldTypeDescription
idID!Unique identifier made up of dependency id and index
dependencyDependency!Dependency this additional repository belongs to
repositoryString!URL of the repository
indexBigInt!Index of this additional repository

#DependencyScript

Description: information about a script for a dependency

FieldTypeDescription
idID!Unique identifier made up of dependency id and index
dependencyDependency!Dependency this script belongs to
indexBigInt!Index of this script
scriptString!Contents of script
addressBytes!Address of the bytecode storage contract for this script