Skip to main content

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.

Learn More

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:

Basic SDK Usage
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

Next Steps

Ready to start building? Choose your path: