Skip to main content

Pritunl API Client for Python

Project description

Pritunl API client for Python 3

This is a simple api client written in Python 3. View example in example.py. Python 2 is not supported. You need to refer Pritunl api doc to get the idea on how to use this.

Basically this api client use almost same command like in the doc. For example:

Quick Usage

import os

from pritunl_api import Pritunl

PRITUNL_BASE_URL = os.environ.get('PRITUNL_BASE_URL')
PRITUNL_API_TOKEN = os.environ.get('PRITUNL_API_TOKEN')
PRITUNL_API_SECRET= os.environ.get('PRITUNL_API_SECRET')

pritunl = Pritunl(
    url=PRITUNL_BASE_URL,
    token=PRITUNL_API_TOKEN,
    secret=PRITUNL_API_SECRET
    )

Example

  • Example 1:

    (in source) GET /server

    pritunl.server.get()
    
  • Example 2:

    (in source) PUT /server/:server_id/organization/:organization_id

    pritunl.server.put(srv_id='', org_id='')
    
  • Example 3:

    (in source) DELETE /user/:organization_id/:user_id

    pritunl.user.delete(org_id='', usr_id='')
    
  • Example 4:

    (in source) POST /server**

    pritunl.server.post(data={
      'name': 'new server name'})
    

    * If there is data available, you must pass it through data parameter.

    * Command above works well because there are template available for creating a new server.

  • Example 5:

    (in source) PUT /user/:organization_id/:user_id

    api.user.put(org_id='', usr_id='', data={
      'name': 'modified org name',
      'disabled': True})
    

Installation

pip install pritunl-api

Include REPL Tools

pip install pritunl-api[repl]

API Development

Docker Environment

Building a Development Container

docker buildx build . \
  --progress plain \
  --file dev.Dockerfile \
  --tag pritunl-api:development

Running a Development Container

docker run --rm -it \
  --volume $(PWD):/pritunl-api \
  --env-file .env \
  pritunl-api:development

This api client is not fully complete. There are some features missing, feel free to fork and pull request to add new features.

Tested working on Pritunl v1.30.3354.99.

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

pritunl-api-1.0.5.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

pritunl_api-1.0.5-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file pritunl-api-1.0.5.tar.gz.

File metadata

  • Download URL: pritunl-api-1.0.5.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.7

File hashes

Hashes for pritunl-api-1.0.5.tar.gz
Algorithm Hash digest
SHA256 e2dc394433734f299dac9246b906faffddd321431b95422452abe8c47186c894
MD5 8354fe5d6e67c8a0b8736c3d25b8bcb9
BLAKE2b-256 51f0aee77861a2d1516e369c9d796b9b82de943ac99d8430023d8158caeeda11

See more details on using hashes here.

File details

Details for the file pritunl_api-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: pritunl_api-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.7

File hashes

Hashes for pritunl_api-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7bf97fa5dc1aa24af70602890d9e2bf448126f3f65ff9c15eac3b2cfaad9d08e
MD5 82960ad2b217259c8385fee15b31c1bf
BLAKE2b-256 45dd4de3bbead280ec74c9abe9e2c4223a27e903616e40fcbdcc02fb4aa9d4c2

See more details on using hashes here.

Supported by

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