Skip to main content

CPanel API Client. Supports cPanel API 2 and UAPI.

Project description

CPanel API Client for Python

Downloads Downloads Downloads

Supports cPanel API 2 and UAPI.

Install

$ pip install cpanel-api

Examples

Basic usage:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import logging
import sys

from pprint import pprint

from cpanel_api import CPanelApi

logging.basicConfig(level=logging.WARNING, stream=sys.stderr)

hostname = 'HOSTNAME_OR_IPADRESS'
username = 'USERNAME'
password = 'PASSWORD'

client = CPanelApi(hostname, username, password)

# Alternatively, to authenticate using a UAPI or cPanel API 2 token, use:
# client = CPanelApi(hostname, username, '<TOKEN>', auth_type = 'utoken')

# {'warnings': None, 'errors': None, 'data': {'port': '1243'}, 'metadata': {}, 'status': 1, 'messages': None}
r = client.uapi.SSH.get_port()
print('SSH port:', r.data.port)
# get all public ssh keys
# {'cpanelresult': {'postevent': {'result': 1}, 'apiversion': 2, 'data': [...], 'func': 'listkeys', 'event': {'result': 1}, 'module': 'SSH', 'preevent': {'result': 1}}}
r = client.cpanel2.SSH.listkeys()
pprint(r.cpanelresult.data)
# retrieve key
r = client.cpanel2.SSH.fetchkey(name='id_rsa')
# {"name": "id_rsa", "key": "ssh-rsa XXX"}
print(r.cpanelresult.data[0].key)
r = client.cpanel2.SSH.importkey(name='new_rsa.pub', key='*data*')
pprint(r)
# ...
r = client.cpanel2.DomainLookup.getdocroot(domain='site.info')
print(r.cpanelresult.data[0].reldocroot)  # public_html

Function call syntax:

client.api_version.ModuleName.function_name({'param': 'value'})
client.api_version.ModuleName.function_name(param='value')
client.api_version.ModuleName.function_name({'param': 'value'}, param='value')
client.api_cal('api_version', 'ModuleName', 'function_name', {'param': 'value'}, param='value')

Where api_version is cpanel2 or uapi.

Links:

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

cpanel-api-0.3.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

cpanel_api-0.3.0-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file cpanel-api-0.3.0.tar.gz.

File metadata

  • Download URL: cpanel-api-0.3.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.8.2 Linux/5.4.0-1047-azure

File hashes

Hashes for cpanel-api-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d8a1df858ffbdfa7dbc50dc2a0ac629269bcc4d8e0c9d9031fe478577def9786
MD5 eb16e8461bde643142598372489adfa6
BLAKE2b-256 085da05dbcc614db75c09d3e076f24cf0f954a3a9d326617fa617eee0c76ac93

See more details on using hashes here.

File details

Details for the file cpanel_api-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: cpanel_api-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.8.2 Linux/5.4.0-1047-azure

File hashes

Hashes for cpanel_api-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1d2deed5cd79f8d93991e180fcc00494906e11db8453a5f6b6dfdf60ec5c2ff6
MD5 5c7423d5b0d525bf7223fefb45ebfd49
BLAKE2b-256 c586460969b1f4157ae8a0870bf348b61f2c1e3c1735cd2a1207c0ba3af56c42

See more details on using hashes here.

Supported by

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