Skip to main content

Voximplant API client library

Version 2.12.0

NOTE

From 2.11.0, the library uses httpx instead of requests to perform HTTP requests.

The public API is unchanged: the same classes, methods, parameters, and return values. requests is no longer a dependency of this package, and transport failures raised by the client are httpx errors.

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))

Metadata

Release files for voximplant-apiclient 2.12.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for voximplant-apiclient 2.12.0
File Size Uploaded Provenance
voximplant_apiclient-2.12.0.tar.gz 36.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for voximplant-apiclient 2.12.0
File Interpreter ABI Platform
voximplant_apiclient-2.12.0-py3-none-any.whl Python 3 none any Details

Total release size: 72.0 kB

Release files / voximplant_apiclient-2.12.0.tar.gz

Download URL voximplant_apiclient-2.12.0.tar.gz
Size 36.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9ffdb144e492809c15c76031cfafcf87a966c5b296bdbf72c17c4daba8f15ad2
BLAKE2b-256 checksum
How to use checksums
bb0135d1c4ba6910f00944a878d082ae65843987797a2d22c351e0e079ef8a0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.4

Release files / voximplant_apiclient-2.12.0-py3-none-any.whl

Download URL voximplant_apiclient-2.12.0-py3-none-any.whl
Size 35.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
18d3441b991d0c41b43feb26e0793090d0cba9a5e1653aa7f160169878888a7e
BLAKE2b-256 checksum
How to use checksums
61acf9d781b17be83c16d2f259506413b97cdfdc5e6f761649812c461a07dbc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.4

Security for voximplant-apiclient 2.12.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

2.12.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page