Skip to main content

Architecture & Service Responsibilities

Architecture Diagram

Architecture

Service Responsibilities

IAM Service

  • Manages user authorization. Through Workspaces, Groups, Policy and Direct Policy mechanism.
  • Handles user session management. It starts and extends User Session. It also expires it using Redis' built-in expiration features.
  • Provides Roles that group Policies in templates.

Account Service

  • Manages user authentication.
  • Manages User, Organization and Workspace resources.
  • Provides 2FA implementation.
  • Handles Biometrics.
  • Produces ar.notification.auth messages. Their content is Welcome e-mail, Password Reset e-mail.

Logger Service

  • Manages Audit resource.
  • Persists all successfully authenticated actions.

Files Service

  • Provides a way to upload files to AWS S3 bucket.
  • Persists a bunch of file metadata.
  • Generates time constrained signed URLs to view the file content.

Notification Service

  • Consumes ar.notification.auth messages.
  • Sends e-mail with Sendgrid.
  • Keeps e-mail HTML templates.

Custodian Service

  • Consumes ar.asset.new messages.
  • Produces ar.wallet.update and ar.balance.update messages.
  • Integrates with Fireblocks. Provides a way to create Vaults, create Wallets, read Assets balance.
  • Manages Custodian supported assets.

AMRS Service

  • Produces ar.asset.new messages.
  • Consumes ar.wallet.update and ar.balance.update messages.
  • Integrates with APILayer, providing exchange rates data. Executes price conversions.
  • Integrates with CoinMarketCap and CoinGecko, providing current digital asset prices in USD.
  • Manages Operations, Defendants, Digital and Physical assets.
  • Manages Disposal Requests.
  • Manages Escrows.
  • Manages Balance Update jobs.
  • Manages User Data Storage.
  • Provides ability to import spreadsheets.
  • Implements Transfer Requests and Asset Sharing.
  • Generates reports (depracated).
  • Manages Seizures (depraceted).
  • Builds Asset, Defendant, Operation stats (depraceted).

Blockchain & EVM Services

  • Interacts with Blockchain and Ethereum networks to retrieve and provide data stored directly on the blockchain.
  • Performs address validations and lookups.
  • Integrates with Blockdaemon and Alchemy to fetch balances.

Broker & Auth Services

  • Perform User authentication and authorization.
  • Log Audits
  • Route the HTTP to RPC