This library aims to implement the TransIP API in Python.
Quick Start
Prerequisite
Make sure you have an account at TransIP
Enable the API (https://www.transip.nl/cp/mijn-account/#api)
Whitelist your IP.
- Generate a new key-pair.
Copy-paste the private key into a file.
Put the private key in a file called decrypted_key beside this README.rst file.
Setup
You can get the library directly from PyPi:
$ pip install transip
Example
The command-line interpreter doesn’t do much yet. By default it does a getDomainNames() call, but with the ‘-u’ option it’s also possible to add or update DNS records. When calling it with ‘-h’, it will show all available options.
$ transip-api
[example.com, example.org, example.net]
$ transip-api -h
usage: transip-api [-h] [-l LOGINNAME] [-s] [-a] [-u] [-d]
[--domain-name DOMAIN_NAME] [--entry-name ENTRY_NAME]
[--entry-expire ENTRY_EXPIRE] [--entry-type ENTRY_TYPE]
[--entry-content ENTRY_CONTENT] [--api-key PRIVATE_KEY_FILE]
optional arguments:
-h, --help show this help message and exit
-l LOGINNAME, --login-name LOGINNAME
TransIP username
-s, --show-dns-entries
show all DNS entries for a domain
-a, --add-dns-entry add an entry in the DNS
-u, --update-dns-entry
update an entry in the DNS
-d, --delete-dns-entry
delete an entry in the DNS
--domain-name DOMAIN_NAME
domain name to use
--entry-name ENTRY_NAME
name of the DNS entry
--entry-expire ENTRY_EXPIRE
expire time of the DNS entry
--entry-type ENTRY_TYPE
type of the DNS entry
--entry-content ENTRY_CONTENT
content of the DNS entry
--api-key PRIVATE_KEY_FILE
TransIP private key
Example of adding/updating a record:
$ transip-api -l githubuser -u --api-key privatekey --domain-name example.com --entry-name testentry --entry-expire 86400 --entry-type A --entry-content 127.0.0.1
Request finished successfully.
Documentation
Further documentation can be found in the docs directory, or on https://transip-api.readthedocs.io/en/latest/.
FAQ
Question:
When using the library I get SSL errors such as:
urllib2.URLError: <urlopen error [Errno 1] _ssl.c:510: error:14077458:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 unrecognized name>
Answer:
The suds library has fairly limited SSL support which is dependent on the Python version, to work around this the suds_requests library can be used which replaces urllib2 with the requests library. Additionally the requests library automatically pools connections which makes the library slightly faster to use. To install:
pip install suds_requests
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file transip-2.1.1.tar.gz.
File metadata
- Download URL: transip-2.1.1.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2e29e0c76c2002ba4dc08eaddd27a6e49cf42f74471ffd344f6c30392876066
|
|
| MD5 |
f09f4c6b5f83580dcb9ae8af36ccb6fa
|
|
| BLAKE2b-256 |
7621b318f13d888040125f46d22d058385adc1d1921eec5758ad2eafc663323a
|