What you’ll need
- The Goldsky CLI, logged in.
Install Goldsky's CLI and log in
Install Goldsky's CLI and log in
-
Install the Goldsky CLI:
For macOS/Linux:
For Windows:Windows users need to have Node.js and npm installed first. Download from nodejs.org if not already installed.
-
Log into your Project by running:
This opens your browser to sign in (Google, GitHub, SSO, or email). Once you authenticate, the CLI is logged in automatically — there’s no API key to copy or paste.On a headless or remote machine (or in CI), create an API key on your Project Settings page and pass it directly with
goldsky login --token <API_KEY>. Usegoldsky login --no-browserto print the login URL instead of opening a browser. -
Now that you are logged in, run
goldskyto get started:
The contracts
Elysium is an Arbitrum Orbit chain that settles to HyperEVM. Tokens issued on HyperEVM reach Elysium through two gateway contracts, which both emit the standard Arbitrum token bridge events:
Both events name the token by its address on HyperEVM, not on Elysium. HYPE, Elysium’s gas token, uses a different path and doesn’t appear in these events. Track Elysium bridge flows covers HYPE as well.
1. Save the ABI
The CLI reads a contract’s ABI from a local file named after the contract, in lowercase. Both gateways use the same two events, so save this asabis/standardgateway.json:
abis/standardgateway.json
2. Deploy the subgraph
Run this from the folder that containsabis/:
Leave out the flags to answer the same questions one at a time in the interactive wizard. The no-code subgraph reference lists every flag.
When the deploy finishes, the CLI prints two links: the subgraph’s dashboard, where you can follow indexing, and its GraphQL endpoint. The subgraph is named after the network, here
elysium-bridge-elysium-mainnet/1.0.0.
3. Query bridge activity
Open the GraphQL endpoint in a browser to use its query editor, or send queries from your app. The subgraph returns data while it indexes. Events from both gateways land in the same two collections,depositFinalizeds and withdrawalInitiateds. contractId_ tells you which gateway emitted the event. The CLI drops the leading _ from the event’s parameter names, so _from becomes from, and it adds the fields that end in _.
The latest deposits into Elysium:
amount is in the token’s smallest unit: divide by 10^6 for USDC and 10^18 for WHYPE. Addresses in where filters are lowercase.
Notes
- A withdrawal row means the withdrawal started on Elysium. The tokens reach HyperEVM later, when the withdrawal is executed there.