Objective: Review how to use access the Bulkvs.com Origination and 911 SOAP API using SOAP UI

Similar documents
City/Zip Lookup Web Service Implementation Guide Version 1.00

Lab 3: Simple Integration Use Case

The contents of this publication the specifications of this application are subject to change without notice.

Documentation Cendris Web Services Version July 2015

Using BMC SRM OOB Web Services

Introduction to the Cisco ANM Web Services API

SMS Aggregation - API Documentation

Getting started with OWASP WebGoat 4.0 and SOAPUI.

NEMSIS V3 Performance Measure Service Technical Guide

OpenPro XML SOAP API information. OpenPro ERP software is a fully integrated business application that includes the following modules.

Business Register Web Services XML Services (v6 adapter)

Alexa Site Thumbnail. Developer Guide

Notes. IS 651: Distributed Systems 1

FortiManager - XML API Reference VERSION 5.4.3

Real-Time Claim Adjudication and Estimation Connectivity Specifications

Oracle Communications Network Charging and Control. Web Services Description Language Reference Guide Release 6.0.1

All About Integration

ISM Configuration Step by Step Guide SOAP Monitor. Overview. Version 1.0

Integration Architecture. A quick introduction to the basics of Wynne s Integration Architecture

SOAP Introduction Tutorial

IUID Registry Application Programming Interface (API) Version Software User s Manual (SUM)

Securities Lending Reporting Web Service

DAVE. SOAP Web Services

How To Add a Borrower Via Web Services API

ISM Configuration Step by Step Guide SOAP Monitor. Overview. Version 1.1

Network-centric Middleware for Service Oriented Architectures across Heterogeneous Embedded Systems

Oracle. Field Service Cloud Integrating with Outbound API 18A

Fundamentals - Web Services

dciphering Computing Amazon Seller Central Soap/XML Services as of Jan/2009

Preliminary. Document Transforms Service Protocol Specification

Usage of Evaluate IPAddress Action with wm Mediator

An introduction API testing with SoapUI

RTC ITSM Integration Framework

XchangeCore Quick Start Guide to the Incident Management Service And Incident Work Products

Data Transport. Publisher's Note

MtS-ISL-SUD-SDNS for ARM Transaction Reporting (Article 26 of MiFIR) Commodities Position Reporting (Article 58 of MiFID II)

Lookup Roles Application Programming Interface (API) Version Software User s Manual (SUM)

Broadband Connectivity Service (BBCS),Full Access Services (FA) and Cooperation Partner Services (COPA) General Functions Interface Specification

Distributed Internet Applications - DIA. Web Services XML-RPC and SOAP

Exercise SBPM Session-4 : Web Services

Web Services in Language Technology and Terminology Management

Traffic Engineering Management Provisioning

Cisco CallManager 4.1(2) AXL Serviceability API Programming Guide

ccess Protocol Simp! Unde^

Search. Google Search. Google SOAP Search CHAPTER 19.

IndySoap Architectural Overview Presentation Resources

What is Web Service. An example web service. What is a Web Service?

ECE450H1S Software Engineering II Tutorial I Web Services

CURT COMNET XML Portal

SOAP. Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ)

How to import a WSDL Data Source and Prepare it for Use in Framework Manager

HP Operations Orchestration

Scheduling API. Getting Started. Scheduling API Overview CHAPTER

Public API (PAPI) Web Services Guide. SAP Manufacturing Execution 15.0

Implementing a Notification Server

Real-Time Inquiry Connectivity Specifications

Overview. Guide for the Authorized User

Create an account in Salesforce using the Web Services consumer functionality

Why SOAP? Why SOAP? Web Services integration platform

Serviceability XML Programming

Web Services Overview

4 Using Web Services and SOAP

Introduction to the Prime Fulfillment API

Technical Specifications for TAXI (Web Services using tml) Version template-3.0

OGC Testbed 10 Engineering Report: Aviation Dissemination of Weather Data

Search API. Overview. This chapter describes the Search API.

it is

Power IQ WS-API Programming Guide Release 2.0

RPC. Remote Procedure Calls. Robert Grimm New York University

Application protocols & presentation layer

Copyright 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 13

Fundamentals - Web Services

The Echo Service Manual

How to Register for e-permits

LoginService-Public_2_0 Web Service Reference

CKO2 - XML Protocols. CKO2 outputs - A2A general description. NBB - IT Department. IT Applications - PRSM. Date: 12/05/2011. Document version: V0.

Setting up B2B and Frequently Asked Questions

Outline. Internet Services Introduction. The Promise. Web Service Overview

NIELSEN API PORTAL USER REGISTRATION GUIDE

First Data Gateway. Web Service API Integration Guide. Version 3.0

SPORTident Timing SOAP API Developer Documentation

Web. Web. Java. Java. web. WebService. Apache Axis. Java web service. Applet Servlet JSP SOAP WebService XML J2EE. Web (browser)

Basic API Reference & Developer Guide

Android Programming Lecture 14 10/26/2011

Creating a REST API which exposes an existing SOAP Service with IBM API Management

Change Discovery Service

Oracle Communications Network Charging and Control. Open Services Development User's & Technical Guide Release: NCC4.4.1

Information Network I: The Application and Upper Layers

Invoking Web Services. with Axis. Web Languages Course 2009 University of Trento

Monitoring WAAS Using XML API

Integration Guide. LoginTC

CA Process Automation

Java CAPS 6 Update 1 Exposing MTOM-capable Java CAPS Classic Web Service Contents Introduction

Industry Training Register. Guide to integration for ITOs

How to reset your password when given a PASSCODE from the IT Service Desk. Page 2-8. How to change a Forgotten Password by Yourself.

JChem Web Services. Gabor Guta, PhD

Five Things. Ten Minutes. TOOLKIT. #AUDC12

CRM On Demand. Oracle CRM On Demand CTI Developer s Guide

SAP Business Connector SOAP Programming Guide

Exception Handling in Web Services exposed from an R/3 System

Transcription:

Objective: Review how to use access the Bulkvs.com Origination and 911 SOAP API using SOAP UI Perquisites: 1. Have access to your bulkvs.com API ID 2. Have an MD5 equivalent of your bllkvs.com password 3. Download and install soapui Step 1: Log in and retrieve your API Key 1.Go to bulkcnam.com and sign up for a free account (if you do not have one already) 2.Once logged in click on Origination Portal 3.Your API Key is listed under My Account: (For example: API Key: ad4cdd89b7a7b7c73935f81746apd93) Step 2: Getting your MD5 equivalent password 1. There are several ways to get your MD5 equivalent. The easiest is to go to a website that generates MD5 strings. One such site is http://www.miraclesalad.com/webtools/md5.php 2. open a web browser and go to http://www.miraclesalad.com/webtools/md5.php 3. Enter your bulkvs.com password in the text box 4. press MD5. 5. In the below example my password is password123 and the MD5 equivalent is 482c811da5d5b4bc6d497ffa98491e38

Step3: Download SoapUI 1.Go to soapui.com to download a free copy of soapui.com 2.Once you are at the site click on the downloads -> download soapui 3.Then click on soapui 4.Click on the version you would like to download. As of this writing 4.5 is out 5. Click on the soapui-x32-4_5_0.exe (or sopaui-x65-4_5_0.exe if you have a 64 bit system) 6.Once downloaded install the application

Step4: Starting soapui and testing bulkvs.com s API 1.Start soapui on your pc 2.Once SoapUI starts click on file -> new soap Project 3. Enter the WSDL bulkvs.com link https://portal.bulkvs.com/api?wsdl in the Initial WSDL/WADL section and click ok 4. At this point you will see all of the API options bulkvs.com offers (ex: queryaccount, DnOrder, e911provisionaddress etc )

Step5: Running a query using your account information. (query account status) 1.At this point you should have already started SoapUI and have entered the Bulkvs.com WSDL link for the project (Step4 above). You should have also retrieved your API Key(Step1 above) and have the MD5 equivalent of your bulkvs.com password (step 2 above) 2.Click on queryaccount to expand the drop down then double click on Request 1. On the right had side you should now have an XML output requesting your apikey and apisecret 3.If you have been following from step1 my apikey is ad4cdd89b7a7b7c73935f81746apd93 which I retrieved from logging in to bulkcnam.com and click on origination. My apisecret is my MD5 equivalent of my password when I log in to bulkcnam.com. In this case it is: 482c811da5d5b4bc6d497ffa98491e38 apikey: ad4cdd89b7a7b7c73935f81746apd93 apisecret: 482c811da5d5b4bc6d497ffa98491e38 4.Now that I have all the necessary information we could query my account info and click on the Green Run button on the top left

5.After I click on the run button the bulkvs.com API will respond back with an XML output. In this case you could see the username, balance, credit, lowbalancenotification etc Here are the steps to provision a number: 1) First run "e911validateaddress" to validate a US or Canadian address <soapenv:envelope xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header/> <soapenv:body> <soapenv:e911validateaddress soapenv:encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"> <apikey xsi:type="xsd:string">your_apikey</apikey> <apisecret xsi:type="xsd:string">your_apisecret</apisecret> <address1 xsi:type="xsd:string">704 N. King St.</address1> <address2 xsi:type="xsd:string"></address2> <city xsi:type="xsd:string">wilmington</city> <state xsi:type="xsd:string">de</state> <zip xsi:type="xsd:string">19801</zip> </soapenv:e911validateaddress> </soapenv:body> </soapenv:envelope> Response will be an Address ID: "<addressid xsi:type="xsd:string">10399009691346173546</addressid>"

<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <SOAP-ENV:e911validateAddressResponse> <result> <description xsi:type="xsd:string">ok</description> <entry0> <addressid xsi:type="xsd:string">10399009691346173546</addressid> <address1 xsi:type="xsd:string">704 N KING ST</address1> <address2 xsi:type="xsd:string"/> <city xsi:type="xsd:string">wilmington</city> <state xsi:type="xsd:string">de</state> <zip xsi:type="xsd:string">19801</zip> <time xsi:type="xsd:int">1346173546</time> </entry0> </result> </SOAP-ENV:e911validateAddressResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 2) You would use the Address ID retrieved through Step 1, and call "e911provisionaddress" with the phone number (dn), Name (callername) and Address ID (addressid). <soapenv:envelope xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header/> <soapenv:body> <soapenv:e911provisionaddress soapenv:encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"> <apikey xsi:type="xsd:string">your_apikey</apikey> <apisecret xsi:type="xsd:string">your_apisecret</apisecret> <dn xsi:type="xsd:string">13025551212</dn> <callername xsi:type="xsd:string">bulk Solutions LLC</callername> <addressid xsi:type="xsd:string">10399009691346173546</addressid> </soapenv:e911provisionaddress> </soapenv:body> </soapenv:envelope> 3) Upon success you will receive an XML with description set to "OK" and the name and address provisioned. Upon failure, a failure result will be returned. <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"

xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <SOAP-ENV:e911provisionAddressResponse> <result> <description xsi:type="xsd:string">ok</description> <entry> <dn xsi:type="xsd:string">13025551212</dn> <callername xsi:type="xsd:string">bulk Solutions LLC</callername> <address1 xsi:type="xsd:string">704 N KING ST</address1> <address2 xsi:type="xsd:string"/> <city xsi:type="xsd:string">wilmington</city> <state xsi:type="xsd:string">de</state> <zip xsi:type="xsd:string">19801</zip> </entry> </result> </SOAP-ENV:e911provisionAddressResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> To update an address for a number already on record with us, just repeat steps 1-3, and account will not get charged. Deletions occur through the API call "e911removerecord" and provide the phone number as "dn". Errors you will get back from us will indicate Failure and reason under "Description". Basically, unless you get an OK from us in "Description", then that means there's been a problem and API call should be corrected and reissued. ======================= PHP Example: <? function bulkvs_queryaccount($apikey, $apisecret){ require_once 'SOAP/Client.php'; $wsdl_url = "https://portal.bulkvs.com/api?wsdl"; $WSDL = new SOAP_WSDL($wsdl_url); $client = $WSDL->getProxy(); $apisecrethashed = md5($apisecret); $result = $client->queryaccount($apikey, $apisecrethashed); print_r($result); return; } function bulkvs_query911record($apikey, $apisecret, $dn){ require_once 'SOAP/Client.php'; $wsdl_url = "https://portal.bulkvs.com/api?wsdl"; $WSDL = new SOAP_WSDL($wsdl_url); $client = $WSDL->getProxy(); $apisecrethashed = md5($apisecret); $result = $client->e911queryrecord($apikey, $apisecrethashed, $dn); print_r($result); return; } $id = "<yourid>"; $secret = "<password>"; $dn = "12125555555"; $result1 = bulkvs_queryaccount($id, $secret);

$result2 = bulkvs_query911record($id, $secret, $dn);?> Should provide: stdclass Object ( [description] => OK [entry] => stdclass Object ( [username] => genusys [balance] => 9.55 [credit] => 0 [lowbalancenotification] => 5 [CNAMfee] => 0.009 [TNfee] => 0.35 [TNsetupfee] => 0.64 [LIDBupdatefee] => 0.2 [e911enabled] => yes [e911fee] => 0.72 ) ) stdclass Object ( [description] => OK [entry] => stdclass Object ( [dn] => 12125555555 [callername] => John Smith [address1] => 777 Test Road [address2] => [city] => COPPELL [state] => TX [zip] => 75019 ) )