This documentation relates to an earlier version of JeraSoft VCS.
View User Guide 3.26 or visit our current documentation home page.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

On this page


The Provisioning API
 
provides a mechanism for a real-time integration with 3rd party systems, including softswitches, gateways and CRM systems. The mechanism calls pre-defined handlers on an occurrence of specific events in the system. The handlers are allowed to modify data, allow or forbid the action or simply process given event.
 

Prior to that, VCS Core API and Management API provide utilities needed to receive requests from external systems. Now, you can configure VCS billing platform to send requests to your 3rd party system.

For example, you can monitor the client's balance status via this functionality. Thus, when the client's balance is below zero, you can configure that the billing will send to an external system a notification in order to avoid any disruptions to your organization current processes.

Tip

The full list of Provisioning API parameters matches with CoreAPI and they are available upon an individual request of your current clients.

Handlers


There are two types of handlers that can be used: 

  • HTTP scripts, called via POST requests (used in most cases)
  • Local server scripts, called locally on the server (used in very specific cases)
Best practice example

Here there is an example how to apply the script handler.

  1. Open the Provisioning section and create a handler.
    1. Specify the name, type, and status.
    2. In Event field select Before and Clients Create event from the drop-down list.
    3. In Task field indicate script type and determine the location of the script, for example: /provisioning/script.py.
    4. Click Apply.

We have the next script (see below) with the following location: /provisioning/script.py.

#!/usr/bin/env python2.7
import sys 
import json 
input = '\n'.join(sys.stdin.readlines()) 
 
data = json.loads(input) 
data['name'] = data['name'] + "testprefix" 
 
print json.dumps(data)

As a result, this handler will add the prefix to the name of the client after creation.


Here there is an example based on http:// handler usage.

2. Open the Provisioning section and start to create a handler.

    1. Specify the name, type, and status.
    2. In Event field select After and Clients Create event from the drop-down list.
    3. In Task field indicate http:// type and determine the port and method, for example: 120.0.0.1:5000/api.
    4. Click Apply.

Find below an example of the http:// handler:

from flask import Flask, request
import json
app = Flask(__name__)
@app.route("/api", methods=['GET', 'POST'])
def api():
    data = json.loads(request.data)
    return json.dumps(data)
if __name__ == "__main__":
    app.run()

Events

The Provisioning API supports the following list of events:

TitleAction
Clients
  • create
  • update
  • delete
  • archive
  • custom fields update
  • balance became >=0
  • balance became <=0
Accounts
  • create
  • update
  • delete
Clients Packages
  • assign
  • activate
  • deactivate
  • renew
  • close 

Tip

  • For more information about configuring and monitoring of hooks for Provisioning API, visit our respective article User Guide > System > Provisioning API.
  • If you need to process some of the actions that are not listed here, contact our support for a feature request. 

  • No labels