Nexla SDK Overview
The Nexla SDK is a comprehensive Python library that provides a typed, developer-friendly interface for building, operating, and monitoring data pipelines with the Nexla platform. Built with modern Python practices, it offers complete API coverage with type safety, IDE support, and enterprise-ready features.
The SDK enables programmatic interaction with all Nexla resources including flows, sources, destinations, nexsets, lookups, users, organizations, teams, projects, notifications, and metrics. Note that the SDK provides a higher-level abstraction compared to direct API calls, making it easier to build and manage data pipelines.
For comprehensive SDK documentation with detailed guides, examples, and API reference, see our complete SDK Guides.
Head over to the Authentication section to see how to fetch the root path and access token for accessing Nexla API.
Key Features
Complete API Coverage
- Resources: Flows, sources, destinations, nexsets, lookups, users, organizations, teams, projects, notifications, and metrics
- Full CRUD Operations: Create, read, update, and delete operations for all supported resources
- Bulk Operations: Efficient batch processing capabilities
Developer Experience
- Type Safety: Full type hints with Pydantic v2-based models for requests and responses
- IDE Support: Rich autocomplete and inline documentation
- Validation: Automatic request/response validation and error handling
Enterprise Ready
- Authentication: Service key (recommended) or access token authentication
- Reliability: Built-in retries, error mapping, and robust HTTP client
- Observability: Optional OpenTelemetry tracing for monitoring and debugging
- Python 3.9+: Compatible with modern Python versions
What You Can Build
- Data Pipelines: Create and manage complex ETL/ELT workflows
- Data Integration: Connect disparate data sources and destinations
- Monitoring & Alerting: Set up notifications and track pipeline metrics
- Automation: Automate data operations and pipeline management
- Analytics: Query and analyze pipeline performance data
Quick Start
Get up and running in minutes with this simple example:
from nexla_sdk import NexlaClient
# Initialize client (reads NEXLA_SERVICE_KEY from environment)
client = NexlaClient()
# List all your data flows
flows = client.flows.list()
print(f"Found {len(flows)} flows")
# Get flow details
flow = client.flows.get(flow_id="your-flow-id")
print(f"Flow '{flow.name}' status: {flow.status}")
For more comprehensive examples and ready-to-run code snippets, see our Quick Start Guide with copy-paste examples for common tasks.
Documentation Structure
- Getting Started - Installation, authentication, and first request
- Core Concepts - Understanding Nexla's data model and flow topology
- API Reference - Complete method documentation and client configuration
- Examples & Tutorials - Real-world use cases and patterns
- Operations - Monitoring, observability, and troubleshooting
Next Steps
Ready to start building? Choose your path:
- New to Nexla? → Core Concepts
- Ready to code? → Getting Started
- Want examples? → Examples & Tutorials
- Need API details? → API Reference