Skip to main content

Remnawave Python SDK

📢 Repository Migration Notice

This repository has been moved from sm1ky/remnawave-api to remnawave/python-sdk.

PyPI Package Migration:

  • Legacy versions (≤1.x): Available at remnawave_api (deprecated)
  • New versions (≥2.x): Available at remnawave

Please update your dependencies to use the new package name for future updates.

Stars Forks Issues Supported python versions Downloads PyPi Package Version Publish Python Package

A Python SDK client for interacting with the Remnawave API. This library simplifies working with the API by providing convenient controllers, Pydantic models for requests and responses, and fast serialization with orjson.

📦 Installation

Install the latest version from the new PyPI package:

pip install remnawave

Legacy Package (Deprecated)

If you need older versions (≤1.x), use the legacy package:

pip install remnawave_api  # Deprecated - use 'remnawave' instead

Development Version

If you need the development version:

pip install git+https://github.com/remnawave/python-sdk.git@development

🫥 Compatible versions

Contract Version Remnawave Panel Version
2.8.0 >=2.8.0
2.7.0 >=2.7.0
2.6.3 >=2.6.3
2.6.2 >=2.6.2
2.6.1 >=2.6.0
2.4.4 >=2.4.0
2.3.2 >=2.3.0, <2.4.0
2.3.0 >=2.3.0, <2.3.2
2.2.6 ==2.2.6
2.2.3 >=2.2.13
2.1.19 >=2.1.19, <2.2.0
2.1.18 >=2.1.18
2.1.17 >=2.1.16, <=2.1.17
2.1.16 >=2.1.16
2.1.13 >=2.1.13, <=2.1.15
2.1.9 >=2.1.9, <=2.1.12
2.1.8 ==2.1.8
2.1.7.post1 ==2.1.7
2.1.4 >=2.1.4, <2.1.7
2.1.1 >=2.1.1, <2.1.4
2.0.0 >=2.0.0,<2.1.0
1.1.3 >=1.6.12,<2.0.0
1.1.2 >=1.6.3,<=1.6.11
1.1.1 1.6.1, 1.6.2
1.1.0 1.6.0
1.0.8 1.5.7

Dependencies

  • orjson (>=3.10.15, <4.0.0)
  • rapid-api-client (==0.6.0)
  • httpx (>=0.27.2, <0.28.0)

🚀 Usage

Here’s a quick example to get you started:

import os
import asyncio

from remnawave import RemnawaveSDK  # Updated import for new package
from remnawave.models import (  # Updated import path
    UsersResponseDto, 
    UserResponseDto,
    GetAllConfigProfilesResponseDto,
    CreateInternalSquadRequestDto
)

async def main():
    # URL to your panel (ex. https://vpn.com or http://127.0.0.1:3000)
    base_url: str = os.getenv("REMNAWAVE_BASE_URL")
    # Bearer Token from panel (section: API Tokens) 
    token: str = os.getenv("REMNAWAVE_TOKEN")

    # Initialize the SDK
    remnawave = RemnawaveSDK(base_url=base_url, token=token)

    # Fetch all users
    response: UsersResponseDto = await remnawave.users.get_all_users()
    total_users: int = response.total
    users: list[UserResponseDto] = response.users
    print("Total users: ", total_users)
    print("List of users: ", users)

if __name__ == "__main__":
    asyncio.run(main())

❤️ About

This SDK was originally developed by @kesevone for integration with Remnawave's API.

Previously maintained by @sm1ky at sm1ky/remnawave-api.

Now officially maintained by the Remnawave Community at remnawave/python-sdk.

Metadata

Release files for remnawave 2.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for remnawave 2.8.0
File Size Uploaded
remnawave-2.8.0.tar.gz 64.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for remnawave 2.8.0
File Interpreter ABI Platform
remnawave-2.8.0-py3-none-any.whl Python 3 none any Details

Total release size: 162.7 kB

Release files / remnawave-2.8.0.tar.gz

Download URL remnawave-2.8.0.tar.gz
Size 64.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e1bafd65f77d0352eda96acc061d4275bb3b3d77db89a9549ed5e66849538c0e
BLAKE2b-256 checksum
How to use checksums
25f270034a719685a46dadc6e3f77122f991bda7f29af8b80ef5c176f8d525c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.

Transparency log

Release files / remnawave-2.8.0-py3-none-any.whl

Download URL remnawave-2.8.0-py3-none-any.whl
Size 98.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ca9d004cdf32b2a0504442f809f0c6dabe9bfb8857dd1f00e3ecca3998502f02
BLAKE2b-256 checksum
How to use checksums
fc14fccb15c25833c2e5a950a1faf721089611dc33b0c0767903034885726f01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page