Skip to main content

A Python SDK for interacting with the Remnawave API v2.7.1.

Project description

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

New Package (Recommended)

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.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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

remnawave-2.7.1.tar.gz (59.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

remnawave-2.7.1-py3-none-any.whl (92.2 kB view details)

Uploaded Python 3

File details

Details for the file remnawave-2.7.1.tar.gz.

File metadata

  • Download URL: remnawave-2.7.1.tar.gz
  • Upload date:
  • Size: 59.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for remnawave-2.7.1.tar.gz
Algorithm Hash digest
SHA256 0e3477925b8681dc69fe1874862e4508aed2f66311a6ab437bf06ba57a63754d
MD5 72fb16939d2b965768e253d8ebebfb41
BLAKE2b-256 747671115ed546d909a37d2a349aec01cc9aeb70e9186b8e4977f084f045c5b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for remnawave-2.7.1.tar.gz:

Publisher: upload.yml on remnawave/python-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file remnawave-2.7.1-py3-none-any.whl.

File metadata

  • Download URL: remnawave-2.7.1-py3-none-any.whl
  • Upload date:
  • Size: 92.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for remnawave-2.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 73b93fbe4b4454189e50d51266f089ca292d608e286cf92c0b3d1d9bc9201f7b
MD5 fb3b0a9ffe1b67076617e7775789e319
BLAKE2b-256 8df2dcb5a041549eb10b8ed9c94e5953c95a62846746916c956d92e9b41734c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for remnawave-2.7.1-py3-none-any.whl:

Publisher: upload.yml on remnawave/python-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page