config/profiles/. Each profile defines chains, providers, routing policies, and rate limits. Multiple profiles enable isolated configurations for different environments or tenants.
Profile System
Profiles are the core configuration unit in Lasso. Each profile:- Defines which blockchain networks (chains) to support
- Specifies RPC providers for each chain
- Configures routing behavior, health monitoring, and WebSocket subscriptions
- Sets rate limits and capacity controls
- Can be accessed via unique URL paths
Profile File Structure
Each profile is a YAML file with two sections separated by document markers (---):
URL Structure
Profiles are accessed via URL paths:Configuration Hierarchy
Lasso’s configuration follows this hierarchy:- Application Level - Runtime environment variables and system defaults
- Profile Level - Frontmatter settings (rate limits, metadata)
- Chain Level - Per-chain configuration (monitoring, selection, WebSocket)
- Provider Level - Individual provider settings (URLs, capabilities, priority)
Multiple Profiles
Create separate profiles for different use cases:- Environment isolation - Separate configs for dev, staging, production
- Tenant segmentation - Different provider sets per customer
- A/B testing - Compare provider performance across profiles
- Cost optimization - Route low-priority traffic to free providers
Configuration Best Practices
Start with the default profile
Start with the default profile
The included
default.yml profile contains battle-tested public providers for major chains. Use it as a reference or starting point.Use meaningful slugs
Use meaningful slugs
Profile slugs appear in URLs. Choose descriptive, URL-safe names:
production, high-priority, customer-acme.Set appropriate rate limits
Set appropriate rate limits
Configure
rps_limit and burst_limit based on expected traffic patterns. Start conservative and increase as needed.Validate on startup
Validate on startup
Lasso validates all profiles at startup and crashes on errors (missing required fields, unresolved environment variables). This prevents runtime surprises.
Document provider choices
Document provider choices
Use YAML comments to explain why providers are included, their known limitations, and any special configuration.
Next Steps
Profile Configuration
Learn about frontmatter fields and chain configuration
Provider Setup
Configure providers, API keys, and capabilities
Environment Variables
Reference for all runtime configuration options
Capabilities
Define provider limits and error handling rules