TNZ REST API Helper Library for Python
Project description
tnzapi
Documentation
The documentation for the TNZ API can be found here.
Versions
tnzapi
uses a modified version of Semantic Versioning for all changes. See this document for details.
Supported Python Versions
This library supports the following Python implementations:
- Python 3.9
- Python 3.10
- Python 3.11
Installation
Install from PyPi using pip, a package manager for Python.
pip install tnzapi
Don't have pip installed? Try installing it, by running this from the command line:
$ curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python
python setup.py install
You may need to run the above commands with sudo
.
Getting Started
Getting started with the TNZ API couldn't be easier. Create a
Client
and you're ready to go.
API Credentials
The TNZAPI
needs your TNZ API credentials (TNZ Auth Tokens). You can either pass these
directly to the constructor (see the code below) or via environment variables.
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken = "[Your Auth Token]"
)
Send Message
Send SMS/Email/Voice/Fax through tnzapi
library.
Send SMS
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Messaging.SMS.SendMessage(
Reference="Test",
MessageText = "Test SMS Message click [[Reply]] to opt out",
Recipients = ["+64211231234"],
)
print(response)
Send an Email
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Messaging.Email.SendMessage(
EmailSubject = "Test Email",
Recipients = [
"recipient@example.com"
],
MessagePlain = "Hi world!"
)
print(response)
Send a Fax Document
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Messaging.Fax.SendMessage(
Recipients = "+6491232345",
Attachments = ["C:\\Document.pdf"]
)
print(response)
Make a Call - Text-to-Speech (TTS)
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Messaging.TTS.SendMessage(
Recipients = ["+64211232345"],
Reference = "Voice Test - 64211232345",
MessageToPeople = "Hi there!",
Keypads = [
Keypad(
Tone=1,
Play="You pressed 1",
RouteNumber="+6491232345"
)
]
)
print(response)
Make a Call - Upload MP3 / Wav File
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Messaging.Voice.SendMessage(
Recipients = ["+64211232345"],
Reference = "Voice Test - 64211232345",
MessageToPeople = "C:\\file1.wav",
MessageToAnswerPhones = "C:\\file2.wav",
Keypads = [
Keypad(
Tone=1,
RouteNumber="+6491232345",
PlayFile="C:\\file3.wav"
)
]
)
print(response)
Reports
Retrieve your message status using tnzapi
library.
Reports - Get Message Status
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Reports.Status.Poll(
MessageID="ID123456"
)
print(response)
Reports - Get SMS Reply
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
request = client.Reports.SMSReply.Poll(
MessageID="ID123456"
)
print(response)
Reports - Get SMS Received List
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Reports.SMSReceived.Poll(
#TimePeriod = 1440
DateFrom="2023-07-01 00:00:00",
DateTo="2023-08-01 00:00:00"
)
print(response)
Actions
Amend your message using tnzapi
library.
Actions - Abort Pending/Delayed Job
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Actions.Abort.SendRequest(
MessageID="ID123456"
)
print(response)
Actions - Resubmit Failed Job
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Actions.Resubmit.SendRequest(
MessageID="ID123456",
SendTime="2023-07-10T09:00" #optional
)
print(response)
Actions - Reschedule DELAYED Job
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Actions.Reschedule.SendRequest(
MessageID="ID123456",
SendTime=datetime.now()
)
print(response)
Actions - Set Number of Operators on TTS/Voice Job
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
request = client.Set.Pacing(
MessageID="ID123456",
NumberOfOperators=10
)
print(response)
Addressbook - Contacts
Manage your contacts using tnzapi
library.
Contacts - List
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Contact.List(
RecordsPerPage=10,
Page=1
)
print(response)
Contacts - Detail
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Contact.Detail(
ContactID="[Contact ID]"
)
print(response)
Contacts - Create
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Contact.Create(
Title="Mr",
Company="TNZ Group",
FirstName="First",
LastName="Last",
MobilePhone="+642122223333",
ViewPublic="Account",
EditPublid="Account"
)
print(response)
Contacts - Update
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Contact.Update(
ContactID="[Contact ID]",
Attention="Test Attention"
)
print(response)
Contacts - Delete
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Contact.Delete(
ContactID="[Contact ID]"
)
print(response)
Addressbook - Contact Group
Manage your contact group relationship using tnzapi
library.
Contact Group - List
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.ContactGroup.List(
RecordsPerPage=10,
Page=1,
ContactID="[Contact ID]"
)
print(response)
Contact Group - Detail
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.ContactGroup.Detail(
ContactID="[Contact ID]",
GroupCode="[Group Code]"
)
print(response)
Contact Group - Create
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.ContactGroup.Create(
ContactID="[Contact ID]",
GroupCode="[Group Code]"
)
print(response)
Contact Group - Delete
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.ContactGroup.Delete(
ContactID="[Contact ID]",
GroupCode="[Group Code]"
)
print(response)
Addressbook - Group
Manage your group using tnzapi
library.
Group - List
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Group.List(
RecordsPerPage=10,
Page=1
)
print(response)
Group - Detail
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Group.Detail(
GroupCode="[Group Code]"
)
print(response)
Group - Create
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Group.Create(
GroupCode="[Group Code]",
GroupName="[Group Name]"
)
print(response)
Group - Update
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Group.Update(
GroupCode="[Group Code]",
GroupName="[Group Name]"
)
print(response)
Group - Delete
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.Group.Delete(
GroupCode="[Group Code]"
)
print(response)
Addressbook - Group Contact
Manage your group contact relationship using tnzapi
library.
Group Contact - List
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.GroupContact.List(
RecordsPerPage=10,
Page=1,
GroupCode="[Group Code]"
)
print(response)
Group Contact - Detail
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.GroupContact.Detail(
GroupCode="[Group Code]",
ContactID="[Contact ID]"
)
print(response)
Group Contact - Create
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.GroupContact.Create(
GroupCode="[Group Code]",
ContactID="[Contact ID]"
)
print(response)
Group Contact - Delete
from tnzapi import TNZAPI
client = TNZAPI(
AuthToken="[Your Auth Token]"
)
response = client.Addressbook.GroupContact.Delete(
GroupCode="[Group Code]",
ContactID="[Contact ID]"
)
print(response)
Getting help
If you need help installing or using the library, please check the TNZ Contact if you don't find an answer to your question.
Project details
Release history Release notifications | RSS feed
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 tnzapi-2.4.0.0.tar.gz
.
File metadata
- Download URL: tnzapi-2.4.0.0.tar.gz
- Upload date:
- Size: 37.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | abcc796633fc5dc31532ab51ece6679554637152f7d24673567fb37b4f7b50f4 |
|
MD5 | 542f8ef05dddb492f3644cbee36d93f3 |
|
BLAKE2b-256 | f132144a32b2181e21508e9ee9425f6a825e28450f5e8390f88d65d040f32c0d |