Contract Addresses
Deployed contract addresses for the Gatekeeper protocol.
import {
gatekeeperAddress,
gatekeeper1155Address,
gatekeeper1155FactoryAddress,
} from '@sceneinfrastructure/sdk'Supported Networks
| Network | Chain ID |
|---|---|
| Base Mainnet | 8453 |
| Base Sepolia | 84532 |
Gatekeeper
The main Gatekeeper contract handles sales, purchases, and fund distribution.
import { gatekeeperAddress } from '@sceneinfrastructure/sdk'
const chainId = 8453 // Base
const address = gatekeeperAddress[chainId]
// '0xC937fb52d0dF60ecba04eb5b1186aA3A9d267910'| Network | Address |
|---|---|
| Base Mainnet | 0xC937fb52d0dF60ecba04eb5b1186aA3A9d267910 |
| Base Sepolia | 0x34b3E31A9a48b1254f221F065c6840C4c869ED6A |
Gatekeeper1155
The ERC1155 implementation contract used as the template for ticket contracts.
import { gatekeeper1155Address } from '@sceneinfrastructure/sdk'
const chainId = 8453 // Base
const implementation = gatekeeper1155Address[chainId]
// '0x3740Eb562aff5eda722C5530555f98669F9F8489'| Network | Address |
|---|---|
| Base Mainnet | 0x3740Eb562aff5eda722C5530555f98669F9F8489 |
| Base Sepolia | 0x9aF5185589bDA188de8FA5Fc3319540042a881e8 |
Gatekeeper1155Factory
The factory contract for deploying new ticket contracts.
import { gatekeeper1155FactoryAddress } from '@sceneinfrastructure/sdk'
const chainId = 8453 // Base
const factory = gatekeeper1155FactoryAddress[chainId]
// '0x36d9641Aa964061CA21253e23d7BbfEBc33d1Bae'| Network | Address |
|---|---|
| Base Mainnet | 0x36d9641Aa964061CA21253e23d7BbfEBc33d1Bae |
| Base Sepolia | 0xe6f9A5E7868C5daBCa486f8cd75a47b50333D8bb |
Type-Safe Access
All address objects are typed with chain IDs:
import { gatekeeperAddress } from '@sceneinfrastructure/sdk'
// TypeScript knows valid chain IDs
gatekeeperAddress[8453] // OK
gatekeeperAddress[84532] // OK
// gatekeeperAddress[1] // Type error - chain not supportedUsage Example
import {
Factory,
Gatekeeper,
gatekeeperAddress,
gatekeeper1155Address,
gatekeeper1155FactoryAddress,
} from '@sceneinfrastructure/sdk'
const chainId = 8453 // Base
const walletAddress = '0x3456789012345678901234567890123456789012'
// Deploy a new ticket contract
const { to, data, predictedAddress } = Factory.prepareDeploy({
factory: gatekeeper1155FactoryAddress[chainId],
implementation: gatekeeper1155Address[chainId],
nonce: BigInt(Date.now()),
creator: walletAddress,
owner: walletAddress,
contractURI: 'ipfs://...',
})
// Create a sale key with a currency address
const saleKey = {
token: predictedAddress,
currency: '0x1111111111111111111111111111111111111111',
// ... other fields
} as const