Emerald City
  • Welcome to Emerald City
  • Products
    • 🐦Toucans
      • Risks
      • How to Set up your Wallet
      • Add your Token to DEX
    • 🎟️FLOAT
    • πŸ€–Emerald bot
      • βœ…Verification
        • πŸ™ŠVerify User Assets
        • ⛏️Verify Touchstone NFTs
        • 🐦Verify Toucans
      • πŸ—³οΈVoting
        • πŸ™ŠNFT Voting
        • πŸͺ™Token Voting
        • 🐦Toucans Voting
      • πŸ—ΊοΈDiscovery
        • Identify User
        • Wallet Information
        • Users with Role
        • Users in a Channel
      • πŸŸͺDapper Sports
        • πŸ€NBA/WNBA TopShot
        • 🏈NFL All Day
        • πŸ‘ŠUFC Strike
      • πŸ’°Tipping
    • ⛏️Touchstone
  • Education
    • πŸ“šEmerald Academy
  • Auditing
    • πŸ›‘οΈShield
      • Contract Auditing
      • Transaction Auditing
  • Developer Tooling
    • πŸ’»Helpful Tools
Powered by GitBook
On this page
  • How Does it Work?
  • Shield's API
  • Example End Result
  1. Auditing
  2. Shield

Transaction Auditing

Protecting the Flow community, one transaction at a time.

PreviousContract AuditingNextHelpful Tools

Last updated 1 year ago

How Does it Work?

Emerald City hosts a instance. In short, FLIX is a place to store audited transactions. Anyone can host their own FLIX instance. When a transaction gets run, wallets can query into FLIX instances they trust and display associated audits.

Fortunately, is a peer of Flow, meaning any transactions hosted by Flow are automatically hosted by Emerald City, and vice versa. Note this doesn't necessarily mean the other has audited them, rather they will simply be discoverable from either's endpoint.

Shield's API

Get Template by ID

With the API you can query Interaction Template by their ID:

GET /v1/templates/${template_id}
  => InteractionTemplate

Get Template by Cadence Code

You can also query for Interaction Template by their cadence body:

POST /v1/templates/search
  body (JSON): {
    cadence_base64: "...",
    network: "..." (mainnet | testnet)
  }
  => InteractionTemplate

Get Template by Name

Interaction Template can be hosted under a static identifer (name), allowing the underlying Interaction Template to change while the way to query for it remained constant:

GET /v1/templates?name=transfer-flow
  => InteractionTemplate

Get Auditor

You can query for known Auditor information for a given network:

GET /v1/auditors?network=(mainnet | testnet)
  => [FlowInteractionTemplateAuditor]

  // Flow Interaction Template Auditor
  // {
  //   f_type: "FlowInteractionTemplateAuditor"
  //   f_version: "1.0.0"
  //   address: string
  //   name: string
  //   website_url?: string
  //   twitter_url?: string
  // }

Endpoint

Emerald City's FLIX service is available at:

https://flix.ecdao.org

eg: GET https://flix.ecdao.org/v1/templates?name=transfer-flow
eg: GET https://flix.ecdao.org/v1/templates/${template_id}
eg: POST https://flix.ecdao.org/v1/templates/search
    body (JSON): {
      cadence_base64: "...",
      network: "..." (mainnet | testnet)
    }

Example End Result

πŸ›‘οΈ
FLIX
Emerald City's FLIX instance