Skip to content

Provider Integration Overview

This documentation is for custodians and wallet tech providers.

What You'll Build

As a Provider, you'll implement API endpoints that Narval calls to:

  1. Authenticate users and establish secure connections with DApps
  2. Process transaction requests from DApps via Narval
  3. Consume whitelist evaluation reports for transaction approval decisions

Integration Checklist

  • Implement /auth/grant endpoint
  • Implement /auth/continue endpoint
  • Implement /token/TOKEN_UUID endpoint for rotate/revoke
  • Call /auth/offer for Provider-initiated auth flow
  • Implement /transaction endpoint
  • Implement /transaction/:id status endpoint
  • Call /evaluate endpoint for Gatekeeper whitelist evaluation
  • Get the DApp Catalog metadata & display on UI

Key Concepts

Provider - Wallet Provider/Custodian implementing these endpoints

Narval - Integration service provider facilitating DApp interaction

DApp - DeFi Application frontend

Account - A network-specific blockchain account (e.g., wallet address)

Connection - An Access Token with scoped permission on accounts

Architecture Overview

DApp ↔ Narval SDK ↔ Narval API ↔ [Your Provider API] ↔ User Approval

When a user wants to connect their wallet or send a transaction:

  1. DApp calls Narval SDK
  2. Narval calls your Provider API endpoints
  3. You handle user authentication and approval flows
  4. You respond to Narval with results
  5. Narval forwards to DApp

Integration Timeline

A typical Provider integration includes:

  • Initial setup and endpoint implementation
  • Testing with Narval sandbox environment
  • Security review and key exchange
  • DApp catalog integration (optional)
  • Production deployment