Skip to main content

Voximplant API client library

Project description

Prerequisites

In order to use the Voximplant Python SDK, you need the following:

  1. A developer account. If you don’t have one, sign up here.

  2. A private API key. There are 2 options to obtain it:

    1. Either generate it in the Voximplant Control panel

    2. Or call the CreateKey HTTP API method with the specified authentication parameters. You’ll receive a response with the result field in it. Save the result value in a file (since we don’t store the keys, save it securely on your side).

  3. Python 2.x or 3.x runtime with pip and setuptools>=18.5 installed

How to use

Go to your project folder and install the SDK using pip:

python -m pip install --user voximplant-apiclient

Then import the SDK in your script

from voximplant.apiclient import VoximplantAPIConfig, VoximplantAPI

Next, specify the path to the JSON service account file either in the constructor or using the environment.

constructor:

config = VoximplantAPIConfig(
    credentials_file_path="/path/to/credentials.json",
)
api = VoximplantAPI(config=config)

env:

export VOXIMPLANT_CREDENTIALS=/path/to/credentials.json

Examples

Start a scenario

from voximplant.apiclient import VoximplantAPIConfig, VoximplantAPI, VoximplantException

if __name__ == "__main__":
    config = VoximplantAPIConfig(
        credentials_file_path="credentials.json",
    )
    api = VoximplantAPI(config=config)

    # Start a scenario of the user 1

    RULE_ID = 1
    SCRIPT_CUSTOM_DATA = "mystr"
    USER_ID = 1

    try:
        res = api.start_scenarios(RULE_ID, script_custom_data=SCRIPT_CUSTOM_DATA, user_id=USER_ID)
        print(res)
    except VoximplantException as e:
        print("Error: {}".format(e.message))

Send an SMS

from voximplant.apiclient import VoximplantAPIConfig, VoximplantAPI, VoximplantException

if __name__ == "__main__":
    config = VoximplantAPIConfig(
        credentials_file_path="credentials.json",
    )
    api = VoximplantAPI(config=config)

    # Send the SMS with the "Test message" text from the phone number 447443332211 to the phone number 447443332212

    SOURCE = "447443332211"
    DESTINATION = "447443332212"
    SMS_BODY = "Test message"

    try:
        res = api.send_sms_message(SOURCE, DESTINATION, SMS_BODY)
        print(res)
    except VoximplantException as e:
        print("Error: {}".format(e.message))

Get a call history item

from voximplant.apiclient import VoximplantAPIConfig, VoximplantAPI, VoximplantException
import pytz
import datetime

if __name__ == "__main__":
    config = VoximplantAPIConfig(
        credentials_file_path="credentials.json",
    )
    api = VoximplantAPI(config=config)

    # Get the first call session history record from the 2012-01-01 00:00:00 UTC to the 2014-01-01 00:00:00 UTC

    FROM_DATE = datetime.datetime(2012, 1, 1, 0, 0, 0, pytz.utc)
    TO_DATE = datetime.datetime(2014, 1, 1, 0, 0, 0, pytz.utc)
    COUNT = 1

    try:
        res = api.get_call_history(FROM_DATE, TO_DATE, count=COUNT)
        print(res)
    except VoximplantException as e:
        print("Error: {}".format(e.message))

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

voximplant_apiclient-2.6.0.tar.gz (35.2 kB view details)

Uploaded Source

Built Distribution

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

voximplant_apiclient-2.6.0-py3-none-any.whl (34.8 kB view details)

Uploaded Python 3

File details

Details for the file voximplant_apiclient-2.6.0.tar.gz.

File metadata

  • Download URL: voximplant_apiclient-2.6.0.tar.gz
  • Upload date:
  • Size: 35.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for voximplant_apiclient-2.6.0.tar.gz
Algorithm Hash digest
SHA256 5b847f19d03cd13e6e8b7e8623bbbc23994e366c9336fb37c340a4493b9d1380
MD5 89736e9b5065f78764ef51f188d41cae
BLAKE2b-256 b8b877268f1d217cfc223622fe7ca127e1b0a612c5857be2ebc5ac09e374fd64

See more details on using hashes here.

File details

Details for the file voximplant_apiclient-2.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for voximplant_apiclient-2.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0b9b66bc88b3fb311fa6a7ff13d279e974ea158f60ced195ced6ec719d24b30c
MD5 721e693d358bfe36807183ba9389c67e
BLAKE2b-256 6c498f772f57519ae1cc7524dab5ec32de525ca381197889d85d03cb0a1b3e54

See more details on using hashes here.

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