Skip to content

Terminal Integration

Status: draft for alignment

Related docs: High-Level System Design, User Service + Auth

Scope

TerminalIntegrationService owns MegaETH Terminal profile linking, authorization status, optional points/rank display, and broad in-app Terminal messaging.

It does not own Pump Party login, sessions, clone ownership, or product authorization.

Domain Boundary

Keep two identity domains separate:

text
Pump Party identity
  -> users, linked wallets, sessions, ownership checks

MegaETH Terminal identity
  -> Terminal profile, OAuth linking, points/rank/status

A wallet address can connect the two domains, but it should not become the universal primary key.

Terminal OAuth Flow

text
User is signed into Pump Party
  -> frontend starts Terminal OAuth flow
  -> user authorizes wallet/profile link with Terminal
  -> Terminal redirects back to Pump Party
  -> backend stores Terminal link/status/token metadata
  -> UI can show Terminal linked state and optional points/rank

Terminal OAuth is for Terminal profile linking and points attribution. It is not the Pump Party app session.

Setup Requirements

Before implementation:

  • Use MegaETH Terminal client ID: pumpparty.
  • Provide MegaETH at least one redirect URL for the OAuth return flow.
  • Confirm whether points/rank APIs require storing an API token.
  • Confirm token lifetime, refresh behavior, and revocation behavior.

Data Model

text
terminal_connections
  userId
  terminalProfileId
  walletAddress
  status
  accessTokenEncrypted
  linkedAt
  lastSyncedAt

terminal_profile_snapshots
  userId
  rank
  points
  multiplierStatus
  fetchedAt

Only store profile snapshots if the product needs to display points/rank in-app.

UI Guidance

Use broad, approved messaging:

text
PumpCannon is live on Terminal.
Connect your wallet to your Terminal profile.
Head to terminal.megaeth.com to track points, rank, and ecosystem updates.

Useful surfaces:

  • Banner, toast, or notification linking to Terminal.
  • Terminal linked/unlinked status in account settings.
  • Optional points/rank card if the OAuth SDK/API supports it.

Do not show exact point criteria, hidden eligibility rules, or internal program mechanics.

Confidentiality

Terminal program details are internal. Public product copy should stay high level and should not disclose private criteria, weighting, or privileged program details.