simpro v4 api

68
SIMPRO - V4 API CUSTOMER DOCUMENTATION Version – 4.91.1 Issue Date – 30th Sep 2021 Wireless Logic Ltd Horizon, Honey Lane Hurley Berkshire SL6 6RJ Tel: +44 (0) 1494 679 800 Web: www.wirelesslogic.com

Upload: others

Post on 17-May-2022

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SIMPRO V4 API

SIMPRO - V4 API

CUSTOMER DOCUMENTATION

Version – 4.91.1

Issue Date – 30th Sep 2021

Wireless Logic Ltd

Horizon, Honey Lane

Hurley

Berkshire

SL6 6RJ

Tel: +44 (0) 1494 679 800

Web: www.wirelesslogic.com

Page 2: SIMPRO V4 API

Customer Documentation

2 Customer Distribution

SECTION 1. WIRELESS LOGIC QUALITY CONTROL

Client Customer Documentation

Assignment SIMPro

Document Title v4 API

Wireless Logic Reference WL-SIMPro-v4-API

Client Reference None

Document Status Final - Release

1.1 VERSION HISTORY

Author Date Version Update

Matt Thomas 28th November 2013 1.0

Matt Thomas 20th December 2013 1.1

Matt Thomas 15th January 2014 1.2

Paul Mansell 7th April 2014 2.0

Adam Stacey 29th April 2014 2.1

Paul Mansell 19th June 2014 2.2

Adam Stacey 9th July 2014 2.3

Paul Mansell 30th September 2014 2.4

Paul Mansell 04th December 2014 2.5

Istvan Jano 30th April 2015 2.6

Paul Mansell 20th May 2015 3.0 Added new cancellation methods

Paul Mansell 1st June 2015 3.1 Added getModifiedSIMs method

Paul Mansell 27th July 2015 3.2 Corrected Errors

Paul Mansell 27th July 2016 4.0 Added new version

Added pagination to getInvoiceDetails

Added usage alert push API

Paul Mansell 26th October 2016 4.8 Added getLiveDetails

Page 3: SIMPRO V4 API

Customer Documentation

3 Customer Distribution

Deepthi Joseph 19th January 2017 4.9 Corrected page numbers

Added response information about usage alert push API

Michael Paskov, Artur Piersa

26th October 2017 4.9.1 Add 2 fields to getSIMUsage

Add usage data to getInvoiceDetails

Artur Piersa 4th December 2017 4.9.2 Add Public IP to getSIMDetails

Artur Piersa 23rd January 2019 4.9.3 Add SIM group to getSIMDetails

Scott Beaman 13th May 2019 4.9.4 Add enable IMEI Locking and disable IMEI locking methods

Scott Beaman 29th May 2019 4.9.5 Add change customer solution method

Artur Piersa 4th March 2020 4.9.6 Add EID to getSIMDetails

Łukasz Koszel, Artur Piersa

9th April 2020 4.9.7 Add Apply/Remove Tariff Holiday

Add Stop of Cancellation method

Arkadiusz Wiertlewski

29th April 2020 4.9.8 Reformat document

Arkadiusz Wiertlewski

28th January 2021 4.9.9 Add Sim Group endpoints

Artur Piersa 12th May 2021 4.91 Search SIM by IP

Marcel Zacharias 30th Sep 2021 4.91.1 getSIMDetails method add limit per request 1000 sims

Radosław Zadroga

28th Oct 2021 4.91.2 New Sandbox API URL

Marcel Zacharias

6th May 2022 4.91.3 getSIMusage method add additional content

Page 4: SIMPRO V4 API

Customer Documentation

4 Customer Distribution

SECTION 2. CONTENTS

Section 1. Wireless Logic Quality Control 2

1.1 Version History 2

Section 2. Contents 4

Section 3. Overview 6

Section 4. Authentication 7 Section 5. Billing Accounts 8

5.1 getBillingAccounts method 8

Section 6. Tariffs 9

6.1 getTariffs method 9

6.2 getTariffDetails method 10

Section 7. SIMs 14

7.1 getSIMs method 14

7.2 getModifiedSIMs method 16

7.3 getSIMDetails method 18

7.4 getSIMUsage method 22

7.5 getSIMUsageHistory method 24

7.6 setSIMs Method 26

Section 8. Customer Solutions 27

8.1 getAvailableCustomerSolutions method 27

8.2 getCustomerSolutionDetail method 28

Section 9. MNO Details 30

9.1 getLiveDetails method 30

Section 10. Billing 31

10.1 getInvoices method 31

10.2 getInvoiceDetail method 33

Section 11. Requests 35

11.1 activateSIM method 35

11.2 refreshSIM method 36

11.3 manageSIMBars method 37

11.5 swapSIMByICCID method 39

11.6 swapSIMByMSISDN method 40

11.7 swapSIMToDespatchedSIM 41

11.8 getRequestsStatus method 43

Page 5: SIMPRO V4 API

Customer Documentation

5 Customer Distribution

11.9 enableImeiLocking method 45

11.10 disableImeiLocking method 46

11.11 changeCustomerSolution method 47

11.12 applyTariffHoliday method 48

11.13 removeTariffHoliday method 50

Section 12. Locations 51

12.1 getCellLocation method 51

Section 13. Push APIs 53

13.1 Request Status Updates 53

13.2 Swap SIM To Despatched SIM Info 55

13.3 Usage Alert 56

Section 14. Cancellations 57

14.1 cancelSIM method 57

14.2 getCancellationQuoteMethod 59

14.3 cancelSIMsByQuoteId API 62

14.4 stopCancellation 63

Section 15. Sim Group 64

15.1 Create Sim Group Endpoint 64

15.2 Remove Sim Group Endpoint 65

15.3 Add Sim To Sim Group Endpoint 66

15.4 Remove Sim From Sim Group Endpoint 67

Page 6: SIMPRO V4 API

Customer Documentation

6 Customer Distribution

SECTION 3. OVERVIEW

This document details the SIMPro v4 Application Programming Interface (API). Its aim is to enable a customer of Wireless Logic to setup connection to the API and enable the sending and retrieval of information from the SIMPro platform.

The Wireless Logic SIMPro API allows details from the SIMPro platform to be retrieved, for example details about a SIM or information regarding the tariffs available. As well as retrieving information from the SIMPro platform actions can be performed against your SIMs too, for example, you can activate an inactive SIM or place a full bar on a SIMs Connection.

We also offer a PUSH API where we can call your API should certain events happen on the SIMPro platform, for example, a SIM changes status or a usage threshold is reached. This means that should these events occur then the SIMPro platform makes a call to your API and passes the relevant information.

The production WSDL is available at;

https://simpro4.wirelesslogic.com/api/customerV4?wsdl

A Development Sandbox is available for testing (please ask your account manager if you require access) the wsdl is available at;

https://simprosb.wirelesslogic.com/api/customerV4?wsdl

Page 7: SIMPRO V4 API

Customer Documentation

7 Customer Distribution

SECTION 4. AUTHENTICATION

The SIMPro API uses Basic Authentication – this requires a username and password sent with each request – these credentials will be issued by Wireless Logic.

Page 8: SIMPRO V4 API

Customer Documentation

8 Customer Distribution

SECTION 5. BILLING ACCOUNTS

These methods allow you to retrieve information related to Billing Accounts.

5.1 GETBILLINGACCOUNTS METHOD

To retrieve a list of billing accounts you can use the getBillingAccounts method, this returns a list of account numbers along with the names of each billing account. The request for the getBillingAccounts method requires no parameters.

The response to a getBillingAccounts will contain the following parameters:

Name Description Type Example

return An array of BillingAccounts BillingAccount n/a

The BillingAccount Type contains the following:

Name Description Type Example

name The name for the billing account string Wireless Logic Limited

accountNumber The account number for the billing account

string 100213

A SOAP Fault is returned if there are any errors, such as authentication failure.

The following is an example of a request to the getBillingAccounts method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETBILLINGACCOUNTS/>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 9: SIMPRO V4 API

Customer Documentation

9 Customer Distribution

SECTION 6. TARIFFS

These methods allow you to retrieve information related to Tariffs.

6.1 GETTARIFFS METHOD

To retrieve a list of tariffs you can use the getTariffs method, this returns a list of tariff names and associated billing accounts. The request for the getTariffs method requires the following parameters:

Name Description Type Example

accountNumbers An array of account numbers to retrieve tariffs for String[] 100213

The response to a getTariffs request will contain the following parameters:

Name Description Type Example

return An array of TariffInfo TariffInfo[] n/a

The TariffInfo Type contains the following:

Name Description Type Example

billingAccount The account number for the Tariff string 100213

name The name of the tariff string WL-001

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no tariffs available.

The following is an example request to the getTariffs method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETTARIFFS>

<GETTARIFFSREQUEST> <ACCOUNTNUMBERS>

<ITEM>100213</ITEM> </ACCOUNTNUMBERS>

</GETTARIFFSREQUEST> </API:GETTARIFFS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 10: SIMPRO V4 API

Customer Documentation

10 Customer Distribution

6.2 GETTARIFFDETAILS METHOD

To retrieve a list of tariffs you can use the getTariffDetails method, this returns tariff details. The request for the getTariffDetails method requires the following parameters:

Name Description Type Example

tariffNames An array of tariff names to retrieve details for

String[] WL-001

The response to a getTariffDetails request will contain the following parameters:

Name Description Type Example

return An array of TariffDetails TariffDetails [] WL-001

The TariffDetails Type contains the following:

Name Description Type Example

name The name string WL-001

billingAccount The billingAccount for the tariff string 100213

description The description string WL-001

contractLength The length of the contract Integer 24

isAggregated If this tariff has GPRS aggregation enabled

Boolean true

simCost The cost of a SIM Float 1.00

manageNet The cost of Manage Net Float 1.00

rental The cost of Line Rental Float 1.00

smsInc The number of SMS messages included

Integer 1

smsExtraCost The cost for extra SMS messages Float 1.00

smsExtraCostType The extra SMS cost type – Per Unit, % Uplift or amount Uplift

String Per unit

roamSmsInc The number of roaming SMS messages included

Integer 1

roamSmsExtraCost The cost for extra roaming SMS messages

Float 1.00

Page 11: SIMPRO V4 API

Customer Documentation

11 Customer Distribution

roamSmsExtraCostType The extra roaming SMS cost type –

Per Unit, % Uplift or amount Uplift String Per unit

gprsInc The amount of GPRS data included Integer 1

gprsIncUOM The unit of measure for the GPRS included – bytes, kilobytes, megabytes or gigabytes

String megabytes

gprsExtra The unit at which the extra GPRS cost is measured in

Integer 1

gprsExtraUOM The unit of measure for the GPRS extra cost – bytes, kilobytes, megabytes or gigabytes

String megabytes

gprsExtraCost The cost for extra GPRS data (per gprsExtra)

Float 1.00

gprsExtraCostType The extra GPRS cost type – Per Unit, % Uplift or amount Uplift

String Per unit

roamGprsInc The amount of roaming GPRS data included

Integer 1

roamGprsIncUOM The unit of measure for the roaming GPRS

String megabytes

roamGprsExtra The unit at which the extra roaming GPRS cost is measured in

Integer 1

roamGprsExtraUOM The unit of measure for the roaming GPRS extra – bytes, kilobytes, megabytes or gigabytes

String megabytes

roamGprsExtraCost The cost for extra roaming GPRS data (per roamGprsExtra)

Float 1.00

roamGprsExtraCostType The extra roaming GPRS cost type – Per Unit, % Uplift or amount Uplift

String Per unit

csdInc The amount of CSD data included Integer 1

csdIncUOM The unit of measure for the CSD included – seconds, minutes or hours

String seconds

csdExtra The unit at which the extra CSD cost is measured in

Integer 1

csdExtraUOM The unit of measure for the CSD extra value – seconds, minutes or hours

String seconds

Page 12: SIMPRO V4 API

Customer Documentation

12 Customer Distribution

csdExtraCost The cost for extra CSD data (per

csdExtra) Float 1.00

csdExtraCostType The extra CSD cost type – Per Unit, % Uplift or amount Uplift

String Per Unit

roamCsdInc The amount of roaming CSD data included

Integer 1

roamCsdIncUOM The unit of measure for the roaming CSD included – seconds, minutes or hours

String seconds

roamCsdExtra The unit at which the extra roaming CSD cost is measured in

Integer 1

roamCsdExtraUOM The unit of measure for the roaming CSD extra value – seconds, minutes or hours

String seconds

roamCsdExtraCost The cost for extra roaming CSD data (per roamCsdExtra)

Float 1.00

roamCsdExtraCostType The extra roaming CSD cost type – Per Unit, % Uplift or amount Uplift

String Per unit

voiceInc The amount of voice included Integer 1

voiceIncUOM The unit of measure for the voice included value – seconds, minutes or hours

String seconds

voiceExtra The unit at which the extra voice cost is measured in

Integer 1

voiceExtraUOM The unit of measure for the voice extra value – seconds, minutes or hours

String seconds

voiceExtraCost The cost for extra voice Float 1.00

roamVoiceInc The amount of roaming voice included

Integer 1

voiceIncUOM The unit of measure for the roaming voice included value – seconds, minutes or hours

String seconds

roamVoiceExtra The unit at which the extra roaming voice cost is measured in

Integer 1

voiceExtraUOM The unit of measure for the roaming voice extra value – seconds, minutes or hours

String seconds

Page 13: SIMPRO V4 API

Customer Documentation

13 Customer Distribution

roamVoiceExtraCost The cost for extra roaming voice Float 1.00

roamVoiceExtraCostType The extra roaming voice cost type – Per Unit, % Uplift or amount Uplift

String Per unit

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no tariffs available.

The following is an example request to the getTariffDetails method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETTARIFFDETAILS>

<GETTARIFFDETAILSREQUEST> <TARIFFNAMES>

<ITEM>WM-303</ITEM> </TARIFFNAMES>

</GETTARIFFDETAILSREQUEST> </API:GETTARIFFDETAILS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 14: SIMPRO V4 API

Customer Documentation

14 Customer Distribution

SECTION 7. SIMS

These methods allow you to retrieve information related to SIM cards.

7.1 GETSIMS METHOD

To retrieve a list of SIMs you can use the getSIMs method, this returns a list of SIM ICCIDs (SIM identification numbers), IMSIs (International Mobile Subscriber Identity numbers) and MSISDNs (International Format Mobile Telephone Numbers). The request for the getSIMs method doesn’t require any parameters, the following are all optional and allow you to filter the results:

Name Description Type Example

accountNumber An account number string 100213

tariffName A tariff name string WL-001

Mno A mobile network operator name string Vodafone

status A status, either “active”, “inactive”, “barred”, “cancelled” and “active_test”

string active

customField1 A custom field value (this is the “username” field)

string My project

customField2 A custom field value string My project

customField3 A custom field value string My project

customField4 A custom field value string My project

customField5 A custom field value string My project

searchIp An IP address string 192.192.221.108

The response to a getSIMs request will contain the following parameters:

Name Description Type Example

return An array of SIMInfo SIMInfo[] n/a

The SIMInfo Type contains the following:

Name Description Type Example

iccid The SIM number in ICCID format string 89314404000028396027

Page 15: SIMPRO V4 API

Customer Documentation

15 Customer Distribution

msisdn The SIMs connection mobile telephone

number in International Format string 447123456789

imsi The SIMs IMSI string 23456789012345

status A status, either “active”, “inactive”, “barred”, “cancelled”, “active_test” or “active_ready”

string active

workflow_status The current workflow_status, either “activation_requested”, “cancellation_requested”, “enable_full_bar_requested”, “enable_roaming_requested”, or “disable_roaming_requested”

String activation_requested

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no SIMs available.

The following is an example request to the getSIMs method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETSIMS>

<GETSIMSREQUEST/> </API:GETSIMS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 16: SIMPRO V4 API

Customer Documentation

16 Customer Distribution

7.2 GETMODIFIEDSIMS METHOD

To retrieve a list of SIMs that have been modified after a specific date you can use the getModifiedSIMs method, this returns a list of SIM ICCIDs (SIM identification numbers), IMSIs (International Mobile Subscriber Identity numbers) and MSISDNs (International Format Mobile Telephone Numbers). The request for the getModifiedSIMs method requires a single parameter, modifiedDate, there are also several other optionalparameters that allow you to further filter the results:

Name Description Type Example

modifiedDate Returns SIMs modified after the date specified date 2015-01-31

accountNumber An account number string 100213

tariffName A tariff name string WL-001

Mno A mobile network operator name string Vodafone

status A status, either “active”, “inactive”, “barred”, “cancelled” and “active_test”

string active

customField1 A custom field value (this is the “username” field) string My project

customField2 A custom field value string My project

customField3 A custom field value string My project

customField4 A custom field value string My project

customField5 A custom field value string My project

The response to a getModifiedSIMs request will contain the following parameters:

Name Description Type Example

return An array of SIMInfo SIMInfo[] n/a

The SIMInfo Type contains the following:

Name Description Type Example

iccid The SIM number in ICCID format string 89314404000028396027

msisdn The SIMs connection mobile telephone number in International Format

string 447123456789

imsi The SIMs IMSI string 23456789012345

Page 17: SIMPRO V4 API

Customer Documentation

17 Customer Distribution

status A status, either “active”, “inactive”,

“barred”, “cancelled”, “active_test” or “active_ready”

string active

workflow_status The current workflow_status, either “activation_requested”, “cancellation_requested”, “enable_full_bar_requested”, “enable_roaming_requested”, or “disable_roaming_requested”

String activation_requested

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no SIMs available.

The following is an example request to the getSIMs method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETMODIFIEDSIMS>

<GETMODIFIEDSIMSREQUEST> <MODIFIEDDATE>2015-01-31</MODIFIEDDATE>

</GETMODIFIEDSIMSREQUEST> </API:GETMODIFIEDSIMS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 18: SIMPRO V4 API

Customer Documentation

18 Customer Distribution

7.3 GETSIMDETAILS METHOD

To retrieve details of SIMs you can use the getSIMDetails method, this returns details about a SIM card and its associated data. However, it will return max amount of sims 1000 as by default it is set to get max of 1000 sims per request. The request for the getSIMDetails method requires the following parameters:

Name Description Type Example

identifiers An array of ICCIDs, IMSIs or MSISDNs String[] 447123456789

The response to a getSIMDetails request will contain the following parameters:

Name Description Type Example

return An array of SIMDetails SIMDetails[] n/a

The SIMDetails Type contains the following:

Name Description Type Example

Iccid The SIM number in ICCID format string 89314404000028396027

Imei The SIMs IMEI String 1234567890

activeConnection A Connection type Connection n/a

mnoAccount An MNOAccount Type MNOAccount n/a

billingAccount The billing account for this SIM string 100213

dispatchDate The date the SIM was dispatched

Date 2013-11-29

customField1 A custom field value (this is the “username” field)

string a value

customField2 A custom field value string a value

customField3 A custom field value string a value

customField4 A custom field value string a value

customField5 A custom field value string a value

simGroup SIMGroup Type SIMGroup n/a

virtualSim VirtualSIM Type VirtualSIM n/a

The Connection Type contains the following:

Page 19: SIMPRO V4 API

Customer Documentation

19 Customer Distribution

Name Description Type Example

msisdn The SIMs connection mobile telephone number in International Format

string 447123456789

Imsi The SIMs connection IMSI number

string 234567890234

Data The Connection data number in International Format

String 447123456789

Fax The Connection Fax number in International Format

String 447123456789

contractEndDate The contract end date for the Connection

Date 2013-11-29

billingStartDate The billing start date for the connection

Date 2013-11-29

cancellationDate The date the Connection was cancelled

Date 2013-11-29

activationDate The date the Connection was activated

Date 2013-11-29

Services A ConnectionServices type ConnectionServices n/a

connectionCustomer Status

A ConnectionCustomerStatus Type

ConnectionCustomer Status

n/a

customerTariff A Tariff (see getTariffDetails section)

Tariff n/a

connectionWorkflow Status

A ConnectionWorkflowStatus Type

ConnectionWorkflow Status

n/a

ipAddress A IPAddress Type IPAddress n/a

The IPAddress type contains the following:

Name Description Type Example

ipAddress The IP Address for the connection – there are functions in most common languages to convert this decimal representation of an IP Address to a String. For example, PHP: http://www.php.net/manual/en/function.long2ip. php Java: http://docs.oracle.com/javase/1.5.0/docs/api/java /net/InetAddress.html

int 167772161

Page 20: SIMPRO V4 API

Customer Documentation

20 Customer Distribution

fixedPublicIpAddress The Public IP – format as above int 167772161

The mnoAccount Type contains the following:

Name Description Type Example

Mno An MNO type MNO n/a

The MNO Type contains the following:

Name Description Type Example

Name The name of the Mobile Network Operator (MNO) string vodafone

The ConnectionServices Type contains the following:

Name Description Type Example

Roaming Is roaming enabled boolean True

Data Is data enabled boolean True

Fax Is fax enabled boolean False

Voice Is voice enabled boolean False

Voicemail Is voicemail enabled boolean False

The ConnectionCustomerStatus Type contains the following:

Name Description Type Example

Ident A status, either “active”, “inactive”, “barred”, “cancelled”, “active_test” or “active_ready”

string Active

The ConnectionWorkflowStatus Type contains the following:

Name Description Type Example

Ident A status, either “activation_requested”, “cancellation_requested”, “enable_full_bar_requested”, “enable_roaming_requested”, or “disable_roaming_requested”

string activation_requested

Page 21: SIMPRO V4 API

Customer Documentation

21 Customer Distribution

The SIMGroup Type contains the following:

Name Description Type Example

Name The name of the SIM group string 100213 Group

The VirtualSIM Type contains the following:

Name Description Type Example

eSim ESIM ESIM n/a

The ESIM Type contains the following:

Name Description Type Example

eid EID number string 89049032000001000000033031004517

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no SIMs available.

The following is an example request to the getSIMDetails method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETSIMDETAILS>

<IDENTIFIERS> <ITEM>8944000000000000000</ITEM> <ITEM>447123456789</ITEM>

</IDENTIFIERS> </API:GETSIMDETAILS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 22: SIMPRO V4 API

Customer Documentation

22 Customer Distribution

7.4 GETSIMUSAGE METHOD

To retrieve current month SIM usage you can use the getSIMUsage method, this returns a list of SIM ICCIDs (SIM identification numbers), MSISDNs (International Format Mobile Telephone Numbers) and the current months Data / Voice and SMS usage. For some Jasper networks usage is received as a month to date total and therefore we are not provided with information regarding whether the SIM is in a current session. Therefore ‘In Current Session: False’ will always be show by default. The request for the getSIMUsage method requires the following parameters:

Name Description Type Example

identifiers An array of ICCIDs, IMSIs or MSISDNs String[] 447123456789

The response to a getSIMUsage request will contain the following parameters:

Name Description Type Example

return An array of SIM Usage information SIMUsageInfo[] n/a

The SIMInfo Type contains the following:

Name Description Type Example

iccid The SIM number in ICCID format

string 89314404000028396027

msisdn The SIMs connection mobile telephone number in International Format

string 447123456789

imsi The SIMs connection IMSI number

string 2345678901234

monthToDateBytesUp The number of bytes transferred to the SIM for the current month

integer 100

monthToDateBytesDown The number of bytes transferred month from the SIM for the current

integer 100

monthToDateVoiceUp The number of seconds of voice usage made to the SIM for the current month

integer 10

monthToDateVoiceDown The number of seconds of voice usage made from the SIM for the current month

integer 10

Page 23: SIMPRO V4 API

Customer Documentation

23 Customer Distribution

monthToDateSmsUp The number of SMS

Messages sent to the SIM for the current month

integer 10

monthToDateSmsDown The number of SMS Messages sent from the SIM for the current month

integer 10

lastSeen The date/time the SIM was last seen online. If the SIM has not been online yet null will be returned

datetime 2017-10-23 12:45:13

inCurrentSession Whether the SIM is currently in a session or not. Returns true or false

boolean true

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no SIMs available.

The following is an example request to the getSIMUsage method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETSIMUSAGE>

<IDENTIFIERS> <ITEM>8944000000000000000</ITEM> <ITEM>447123456789</ITEM>

</IDENTIFIERS> </API:GETSIMUSAGE>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 24: SIMPRO V4 API

Customer Documentation

24 Customer Distribution

7.5 GETSIMUSAGEHISTORY METHOD

To retrieve previous months SIM usage you can use the getSIMUsageHistory method, this returns a list of SIM ICCIDs (SIM identification numbers), MSISDNs (International Format Mobile Telephone Numbers) and the specified months Data / Voice and SMS usage. The request for the getSIMUsageHistory method requires the following parameters:

Name Description Type Example

identifiers An array of ICCIDs, IMSIs or MSISDNs String[] 447123456789

usageMonth The month you wish to retrieve usage for Date 2016-01-01

The response to a getSIMUsage request will contain the following parameters:

Name Description Type Example

return An array of SIM Usage information SIMUsageInfo[] n/a

The SIMInfo Type contains the following:

Name Description Type Example

iccid The SIM number in ICCID format

string 89314404000028396027

msisdn The SIMs connection mobile telephone number in International Format

string 447123456789

imsi The SIMs connection IMSI number

string 2345678901234

monthToDateBytesUp The number of bytes transferred to the SIM for the current month

integer 100

monthToDateBytesDown The number of bytes transferred month from the SIM for the current

integer 100

monthToDateVoiceUp The number of seconds of voice usage made to the SIM for the current month

integer 10

monthToDateVoiceDown The number of seconds of voice usage made from the SIM for the current month

integer 10

Page 25: SIMPRO V4 API

Customer Documentation

25 Customer Distribution

monthToDateSmsUp The number of SMS

Messages sent to the SIM for the current month

integer 10

monthToDateSmsDown The number of SMS Messages sent from the SIM for the current month

integer 10

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no SIMs available.

The following is an example request to the getSIMUsageHistory method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETSIMUSAGEHISTORY>

<GETSIMUSAGEHISTORYREQUEST> <IDENTIFIERS>

<ITEM>89314404000117833880</ITEM> </IDENTIFIERS> <USAGEMONTH>2016-08-01</USAGEMONTH>

</GETSIMUSAGEHISTORYREQUEST> </API:GETSIMUSAGEHISTORY>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 26: SIMPRO V4 API

Customer Documentation

26 Customer Distribution

7.6 SETSIMS METHOD

To update the SIMs you can use the setSIMs method, this allows you to update the custom fields of the SIMs. The request for the getSIMs method requires the following parameters:

Name Description Type Example

customField1 The new value of custom field 1 (optional) string new value

customField2 The new value of custom field 2 (optional) string new value

customField3 The new value of custom field 3 (optional) string new value

customField4 The new value of custom field 4 (optional) string new value

customField5 The new value of custom field 5 (optional) string new value

identifiers An array of either ICCIDs, MISISDNs or IMSIs string[] 894400000000000000

The custom fields are optional – but at least one must be specified.

The response to an activateSIM request will contain the following parameters:

Name Description Type Example

return A value confirming the update was complete

Boolean true

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the setSIMs request

The following is an example request to the setSIMs method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:SETSIMS>

<SETSIMSREQUEST> <IDENTIFIERS>

<ITEM>894400000000000000</ITEM> </IDENTIFIERS> <CUSTOMFIELD1>NEW VALUE</CUSTOMFIELD1>

</SETSIMSREQUEST > </API:SETSIMS >

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 27: SIMPRO V4 API

Customer Documentation

27 Customer Distribution

SECTION 8. CUSTOMER SOLUTIONS

These methods allow you to retrieve information related to Customer Solutions.

8.1 GETAVAILABLECUSTOMERSOLUTIONS METHOD

To retrieve a list of customer solutions you can use the getAvailableCustomerSolutions method, this returns a list of customer solution names and associated billing accounts. The request for the getAvailableCustomerSolutions method requires the following parameters:

Name Description Type Example

accountNumbers An array of account numbers to retrieve customer solutions for

String[] 100213

The response to a getAvailableCustomerSolutions request will contain the following parameters:

Name Description Type Example

return An array of CustomerSolutionInfo CustomerSolutionInfo[] n/a

The CustomerSolutionInfo Type contains the following:

Name Description Type Example

name The name of the customer solution string Vehicle Tracking 1

The billing account for the customer solution string 100213

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no customer solutions available.

The following is an example request to the getAvailableCustomerSolutions method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETAVAILABLECUSTOMERSOLUTIONS>

<GETAVAILABLECUSTOMERSOLUTIONSREQUEST> <ACCOUNTNUMBERS>

<ITEM>100213</ITEM> </ACCOUNTNUMBERS>

</GETAVAILABLECUSTOMERSOLUTIONSREQUEST> </API:GETAVAILABLECUSTOMERSOLUTIONS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 28: SIMPRO V4 API

Customer Documentation

28 Customer Distribution

8.2 GETCUSTOMERSOLUTIONDETAIL METHOD

To retrieve details of Customer Solutions you can use the getCustomerSolutionDetail method, this returns details about a customer solution and its associated data. The request for the getCustomerSolutionDetail method requires the following parameters:

Name Description Type Example

customerSolutionNames An array of Customer Solution names String[] n/a

The response to a getCustomerSolutionDetail request will contain the following parameters:

Name Description Type Example

return An array of CustomerSolutionDetail CustomerSolutionDetail[] n/a

The CustomerSolutionDetail Type contains the following:

Name Description Type Example

name The name of the customer solution string Vehicle Tracking 1

The billing account string 100213

Whether GPRS should be enabled if this customer solution is used

boolean True

Whether roaming should be enabled if this customer solution is used

boolean True

Whether voice should be enabled if this customer solution is used

boolean True

Whether voicemail should be enabled if this customer solution is used

boolean True

Whether a PIN on the SIM should be enabled if this customer solution is used

boolean True

Whether a FAX connection should be enabled if this customer solution is used

boolean True

Whether a DATA connection should be enabled if this customer solution is used

boolean True

Any comments associated with this customer solution

string Comments

The CustomerTariff associated with this Customer Solution (see method

CustomerTariff n/a

Page 29: SIMPRO V4 API

Customer Documentation

29 Customer Distribution

getTariffDetails for documentation on this

type)

An array of APNs APN[] n/a

The APN Type contains the following:

Name Description Type Example

apn The name of the APN string wlapn.com

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no customer solutions available.

The following is an example request to the getCustomerSolutionDetail method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETCUSTOMERSOLUTIONDETAIL>

<GETCUSTOMERSOLUTIONDETAILREQUEST> <CUSTOMERSOLUTIONNAMES>

<ITEM>VODAFONE WL-001</ITEM> </CUSTOMERSOLUTIONNAMES>

</GETCUSTOMERSOLUTIONDETAILREQUEST> </API:GETCUSTOMERSOLUTIONDETAIL>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 30: SIMPRO V4 API

Customer Documentation

30 Customer Distribution

SECTION 9. MNO DETAILS

These methods allow you to retrieve information from the Mobile Network Operators.

9.1 GETLIVEDETAILS METHOD

The getLiveDetails method returns the latest status from the MNO. The request for the getLiveDetails method requires the following parameters:

Name Description Type Example

iccid An ICCID string 89441234567890

The response to a getAvailableCustomerSolutions request will contain the following parameters:

Name Description Type Example

return An array of MNO details - This is different for each MNO and subject to change without notification

multiple n/a

Page 31: SIMPRO V4 API

Customer Documentation

31 Customer Distribution

SECTION 10. BILLING

These methods allow you to retrieve information related to Billing.

10.1 GETINVOICES METHOD

To retrieve a list of invoices you can use the getInvoices method, this returns a list of invoices. The request for the getInvoices method requires the following parameters:

Name Description Type Example

accountNumbers An array of account numbers to retrieve invoices for – optional

String[] 100213

The response to a getInvoices request will contain the following parameters:

Name Description Type Example

return An array Invoices InvoiceInfo[] n/a

The InvoiceInfo Type contains the following:

Name Description Type Example

billingAccount The billing account string 100213

invref The invoice reference string AP/12345

date The date the invoice was created date 2013-01-01

rental The line rental cost float 1.00

gprs The GPRS cost float 1.00

mnet The Manage Net cost float 1.00

sms The SMS cost float 1.00

csd The CSD cost float 1.00

smsroam The Roaming SMS cost float 1.00

gprsroam The Roaming GPRS cost float 1.00

csdroam The Roaming CSD cost float 1.00

voice The voice cost float 1.00

Page 32: SIMPRO V4 API

Customer Documentation

32 Customer Distribution

roamingvoice The Roaming voice cost float 1.00

other The other cost float 1.00

roam The total roaming cost float 1.00

nettotal The Net Total float 1.00

vattotal The VAT total float 1.00

grosstotal The gross total float 1.00

gprsagg The GPRS aggregation cost float 1.00

smsagg The SMS aggregation service cost float 1.00

rentalStart The date the rental period was started date 2013-01-01

rentalEnd The date the rental period was ended date 2013-01-01

usageStart The date the usage period was started date 2013-01-01

usageEnd The date the usage period was ended date 2013-01-01

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no invoices available.

The following is an example request to the getInvoices method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETINVOICES>

<GETINVOICESREQUEST> <ACCOUNTNUMBERS>

<ITEM>100213</ITEM> </ACCOUNTNUMBERS>

</GETINVOICESREQUEST> </API:GETINVOICES>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 33: SIMPRO V4 API

Customer Documentation

33 Customer Distribution

10.2 GETINVOICEDETAIL METHOD

To retrieve the details of an invoice you can use the getInvoiceDetail method. The request for the getInvoiceDetail method requires the following parameters:

Name Description Type Example

invoiceReference An invoice reference string AP/12345

firstResult The first invoice line to return – this will return 50,000 results at a time

integer 0

The response to a getInvoiceDetail request will contain the following parameters:

Name Description Type Example

return An array InvoiceDetails InvoiceDetails[] n/a

The InvoiceDetailsType contains the following:

Name Description Type Example

ctn The mobile telephone number string 07123456789

rental The line rental cost float 1.00

gprs The GPRS cost float 1.00

mnet The Manage Net cost float 1.00

sms The SMS cost float 1.00

csd The CSD cost float 1.00

smsroam The Roaming SMS cost float 1.00

gprsroam The Roaming GPRS cost float 1.00

csdroam The Roaming CSD cost float 1.00

voice The voice cost float 1.00

roamingvoice The Roaming voice cost float 1.00

other The other cost float 1.00

roam The total roaming cost float 1.00

nettotal The Net Total float 1.00

network The network for the associated SIM string vodafone

Page 34: SIMPRO V4 API

Customer Documentation

34 Customer Distribution

username The username custom field string username

gprsUsage The Data Usage (MB) float 1.00

roamGprsUsage The Roaming Data Usage (MB) float 1.00

smsUsage The SMS Usage integer 9999

roamSmsUsage The Roaming SMS Usage integer 9999

csdUsage The CSD Usage (seconds) integer 9999

roamCsdUsage The Roaming CSD Usage integer 9999

voiceUsage The Voice Usage (seconds) integer 9999

roamVoiceUsage The Roaming Voice Usage integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no invoice / lines available.

The following is an example request to the getInvoiceDetail method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETINVOICEDETAIL>

<INVOICEREFERENCE>AP/287419</INVOICEREFERENCE> </API:GETINVOICEDETAIL>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 35: SIMPRO V4 API

Customer Documentation

35 Customer Distribution

SECTION 11. REQUESTS

These methods allow you to create requests within the SIMPro application to change a SIMs state.

11.1 ACTIVATESIM METHOD

To activate a SIM you can use the activateSIM method, this returns a request number. The request for the activateSIM method requires the following parameters:

Name Description Type Example

customerSolution The name of the customer solution you want to use for activation settings

string Vodafone WL-001

iccids An array of ICCIDs to activate string[] 894000000000000000

The response to an activateSIM request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the activate SIM request.

The following is an example request to the activateSIM method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:ACTIVATESIM>

<ACTIVATESIMREQUEST> <ICCIDS>

<ITEM>894400000000000000</ITEM> </ICCIDS> <CUSTOMERSOLUTION>VODAFONE WL-001</CUSTOMERSOLUTION>

</ACTIVATESIMREQUEST> </API:ACTIVATESIM>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 36: SIMPRO V4 API

Customer Documentation

36 Customer Distribution

11.2 REFRESHSIM METHOD

To refresh a SIM you can use the refreshSIM method, this returns a request number. The request for the refreshSIM method requires the following parameters:

Name Description Type Example

identifiers An array of either MSISDNs, IMSIs or ICCIDs to refresh

string[] 894000000000000000

The response to a refreshSIM request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the refresh SIM request.

The following is an example request to the refreshSIM method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:REFRESHSIM>

<REFRESHSIMREQUEST> <IDENTIFIERS>

<ITEM>894400000000000000</ITEM> </IDENTIFIERS >

</REFRESHSIMREQUEST> </API:REFRESHSIM>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 37: SIMPRO V4 API

Customer Documentation

37 Customer Distribution

11.3 MANAGESIMBARS METHOD

To enable or disable barring of a SIM you can use the manageSIMBars method, this returns a request number. The request for the manageSIMBars method requires the following parameters:

Name Description Type Example

identifiers An array of MSISDNs,IMSIs or ICCIDS to change the status of

string[] 894000000000000000

barName The bar to change – currently on “full_bar” is supported

string full_bar

requiredState The required state – true = enabled, false = disabled

Boolean true

The response to a manageSIMBars request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the request.

The following is an example request to the manageSIMBars method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:MANAGESIMBARS>

<MANAGESIMBARSREQUEST> <IDENTIFIERS>

<ITEM>894400000000000000</ITEM> </IDENTIFIERS> <BARNAME>FULL_BAR</BARNAME> <REQUIREDSTATE>TRUE</REQUIREDSTATE>

</MANAGESIMBARSREQUEST> </API:MANAGESIMBARS>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 38: SIMPRO V4 API

Customer Documentation

38 Customer Distribution

11.4 manageSIMCapabilities method

To enable or disable roaming capabilities of a SIM you can use the manageSIMCapabilities method, this returns a request number. The request for the manageSIMCapabilities method requires the following parameters:

Name Description Type Example

identifiers An array of MSISDNs, IMSIs or ICCIDs to change the status of

string[] 894000000000000000

capabilityName The capability to change – currently on “roaming” is supported

string roaming

requiredState The required state – true = enabled, false = disabled

Boolean true

The response to a manageSIMCapabilities request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the request.

The following is an example request to the manageSIMCapabilities method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:MANAGESIMCAPABILITIES>

<MANAGESIMCAPABILITIESREQUEST> <IDENTIFIERS>

<ITEM>894400000000000000</ITEM> </IDENTIFIERS> <CAPABILITYNAME>ROAMING</CAPABILITYNAME> <REQUIREDSTATE>TRUE</REQUIREDSTATE>

</MANAGESIMCAPABILITIESREQUEST> </API:MANAGESIMCAPABILITIES>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 39: SIMPRO V4 API

Customer Documentation

39 Customer Distribution

11.5 SWAPSIMBYICCID METHOD

To swap the current connection of a SIM to a new SIM you can use the swapSIMByICCID method, this returns a request number. The request for the swapSIMByICCID method requires the following parameters:

Name Description Type Example

item An array of SwapSIMByICCIDs SwapSIMByICCID[] n/a

The SwapSIMByICCID type should contain the following:

Name Description Type Example

iccid The ICCID of the SIM you wish to swap from

string 894000000000000000

newIccid The ICCID of the SIM you wish to swap to

string 894000000000000001

The response to a swapSIMByICCID request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the request.

The following is an example request to the swapSIMByICCID method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:SWAPSIMBYICCID>

<SWAPSIMBYICCIDREQUEST> <ITEM>

</ITEM>

<ICCID>894400000000000000</ICCID> <NEWICCID>894400000000000001</NEWICCID>

</SWAPSIMBYICCIDREQUEST> </API:SWAPSIMBYICCID>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 40: SIMPRO V4 API

Customer Documentation

40 Customer Distribution

11.6 SWAPSIMBYMSISDN METHOD

To swap the current connection of a SIM to a new SIM you can use the swapSIMByMSISDN method, this returns a request number. The request for the swapSIMByMSISDN method requires the following parameters:

Name Description Type Example

item An array of SwapSIMByMSISDNs SwapSIMByMSISDN[] n/a

The SwapSIMByMSISDN type should contain the following:

Name Description Type Example

msisdn The msisdn of the SIM you wish to swap from

string 4475000000000

newIccid The ICCID of the SIM you wish to swap to

string 894000000000000001

The response to a swapSIMByMSISDN request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the request.

The following is an example request to the swapSIMByMSISDN method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:SWAPSIMBYMSISDN>

<SWAPSIMBYMSISDNREQUEST> <ITEM>

</ITEM>

<MSISDN>447500000000</MSISDN> <NEWICCID>894400000000000001</NEWICCID>

</SWAPSIMBYMSISDNREQUEST> </API:SWAPSIMBYMSISDN>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 41: SIMPRO V4 API

Customer Documentation

41 Customer Distribution

11.7 SWAPSIMTODESPATCHEDSIM

To request a SIM Swap to a new SIM that will be despatched from Wireless Logic use the swapSIMToDespatchedSIM method, this returns a request number. There is an associated push API in section 12 that returns the new SIM ICCIDs upon SIM Swap completion. The request for swapSIMToDespatchedSIM required the following parameters:

Name Description Type Example

identifiers Array of ICCIDs or MSISDNs of the SIMs you wish to swap the connection from

string[] 894000000000000000

address1 1st line of address String John Doe

address2 2nd line of address String A Company

address3 3rd line of address String 1 A Street

address4 4th line of address String A town

address5 5th line of address String A county

address6 6th line of address String PO12 3ST

country the 3 digit ISO code for the country String GBR

productType The new SIM product type – Standard (2FF) if not specified. Options are: full_size (FF), micro_sim (3FF), standard_sim (2FF), nano_sim (4FF), embedded_sim (VQFN8), ruggardized_sim

String standard_sim

The response to a swapSIMToDespatchedSIM request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the request.

The following is an example request to the swapSIMToDespatchedSIM method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:SWAPSIMTODESPATCHEDSIM >

<SWAPSIMTODESPATCHEDSIMREQUEST > <IDENTIFIERS>

Page 42: SIMPRO V4 API

Customer Documentation

42 Customer Distribution

<ITEM>894000000000000001</ITEM> </IDENTIFIERS> <ADDRESS1>JOHN DOE</ADDRESS1> <ADDRESS2>A COMPANY</ADDRESS2> <ADDRESS3>1 A STREET</ADDRESS3> <ADDRESS4>A TOWN</ ADDRESS4> <ADDRESS5>A COUNTY</ADDRESS5> <ADDRESS6>PO12 3ST</ ADDRESS6> <COUNTRY>GBR</COUNTRY>

</SWAPSIMTODESPATCHEDSIMREQUEST > </API:SWAPSIMTODESPATCHEDSIM >

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 43: SIMPRO V4 API

Customer Documentation

43 Customer Distribution

11.8 GETREQUESTSSTATUS METHOD

To retrieve a list of the individual status of each requests of a request you can use the getRequestsStatus method, this returns a list of the individual requests and their status. The request for the getRequestsStatus method requires the following parameters:

Name Description Type Example

requestNumber The request identifier – the number you received when you created the request

integer 9999

The response to a getRequestsStatus request will contain the following parameters:

Name Description Type Example

return An array of Requests RequestInfo[] n/a

The RequestInfo Type contains the following:

Name Description Type Example

sim The ICCID of the SIM that the request was made against

String 894000000000000000

status The current status of the request

String complete

errorMessage If one or more errors occur against a request the last error message is returned

String Error

The following table details the status values possible for an individual request:

Value Description

waiting Waiting to be processed

in_progress In Progress

complete Complete

network Waiting for Network

failed Request Failed

queued Queued to be processed

Page 44: SIMPRO V4 API

Customer Documentation

44 Customer Distribution

cancelled Cancelled

Scheduled Scheduled

A SOAP Fault is returned if there are any errors, such as authentication failure or there are no requests available.

The following is an example request to the getRequestsStatus method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETREQUESTSSTATUS>

<REQUESTNUMBER>9999</REQUESTNUMBER> </API:GETREQUESTSSTATUS >

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 45: SIMPRO V4 API

Customer Documentation

45 Customer Distribution

11.9 ENABLEIMEILOCKING METHOD

To set an IMEi lock on a simyou can use the enableImeiLocking method, this returns a request number. The request for the enableImeiLocking method requires the following parameters:

Name Description Type Example

iccids An array of ICCIDs to set IMEI lock string[] 894000000000000000

The response to an enableImeiLocking request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the set IMEI lock request.

The following is an example request to the enableImeiLocking method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API: ENABLEIMEILOCKING>

< ENABLEIMEILOCKINGREQUEST > <ICCIDS>

<ITEM>894400000000000000</ITEM> </ICCIDS>

</ ENABLEIMEILOCKINGREQUEST > </API: ENABLEIMEILOCKING>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 46: SIMPRO V4 API

Customer Documentation

46 Customer Distribution

11.10 DISABLEIMEILOCKING METHOD

To unset an IMEi lock on a sim you can use the disableImeiLocking method, this returns a request number. The request for the disableImeiLocking method requires the following parameters:

Name Description Type Example

iccids An array of ICCIDs to remove IMEI lock string[] 894000000000000000

The response to a disableImeiLocking request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the disable IMEI lock request.

The following is an example request to the disableImeiLocking method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API: DISABLEIMEILOCKING>

< DISABLEIMEILOCKINGREQUEST > <ICCIDS>

<ITEM>894400000000000000</ITEM> </ICCIDS>

</ DISABLEIMEILOCKINGREQUEST > </API: DISABLEIMEILOCKING>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 47: SIMPRO V4 API

Customer Documentation

47 Customer Distribution

11.11 CHANGECUSTOMERSOLUTION METHOD

To change a customer solution for a sim you can use the changeCustomerSolution method, this returns a request number. The request for the changeCustomerSolution method requires the following parameters:

Name Description Type Example

identifiers An array of ICCIDs or MSISDN’s to change the customer solution for

String[] 894000000000000000

customerSolution A customer solution name String WL-123456

The response to a changeCustomerSolution request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the change customer solution request.

The following is an example request to the changeCustomerSolution method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API: CHANGECUSTOMERSOLUTION>

<CHANGECUSTOMERSOLUTIONREQUEST> <IDENTIFIERS>

<ITEM>894400000000000000</ITEM> </IDENTIFIERS> <CUSTOMERSOLUTION>WL-12345 TEST </CUSTOMERSOLUTION>

</CHANGECUSTOMERSOLUTIONREQUEST> </API: CHANGECUSTOMERSOLUTION>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 48: SIMPRO V4 API

Customer Documentation

48 Customer Distribution

11.12 APPLYTARIFFHOLIDAY METHOD

To Apply Tariff Holiday for a sim you can use the applyTariffHoliday method, this returns a request number. The request for the applyTariffHoliday method requires the following parameters:

Name Description Type Example

identifiers An array of ICCIDs to change the customer solution for

String[] 894000000000000000

from Start Date String 2020-05-01 00:00:00

to End Date String 2020-05-31 00:00:00

requestReference Request Reference String Qwerty

Please note that Tariff Holidays can only be requested for future dates. In addition, the ‘from’ date must always be the first day of the month and the ‘to’ date must always be the last day of the month.

The response to a applyTariffHoliday request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the apply tariff holiday request.

The following is an example request to the applyTariffHoliday method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAPENV:HEADER/> <SOAPENV:BODY>

<API:APPLYTARIFFHOLIDAY> <APPLYTARIFFHOLIDAYREQUEST>

<!--YOU MAY ENTER THE FOLLOWING 3 ITEMS IN ANY ORDER--> <IDENTIFIERS>

<!--ZERO OR MORE REPETITIONS:--> <ITEM>8934072479000000000</ITEM>

</IDENTIFIERS> <FROM>2020-05-01 00:00:00</FROM> <TO>2020-05-31 00:00:00</TO> <REQUESTREFERENCE>QWERTY</REQUESTREFERENCE>

</APPLYTARIFFHOLIDAYREQUEST> </API:APPLYTARIFFHOLIDAY>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 49: SIMPRO V4 API

Customer Documentation

49 Customer Distribution

The following is an example response from the applyTariffHoliday method

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:NS1="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAP-ENV:BODY> <NS1:APPLYTARIFFHOLIDAYRESPONSE>

<RETURN>135</RETURN> </NS1:APPLYTARIFFHOLIDAYRESPONSE>

</SOAP-ENV:BODY> </SOAP-ENV:ENVELOPE>

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the remove tariff holiday request.

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/"> <SOAP-ENV:BODY>

<SOAP-ENV:FAULT> <FAULTCODE>ERROR</FAULTCODE> <FAULTSTRING>PLEASE NOTE THAT TARIFF HOLIDAYS CAN ONLY BE REQUESTED FOR

FUTURE DATES. IN ADDITION, THE ‘FROM’ DATE MUST ALWAYS BE THE FIRST DAY OF THE

MONTH AND THE ‘TO’ DATE MUST ALWAYS BE THE LAST DAY OF THE

MONTH.</FAULTSTRING> </SOAP-ENV:FAULT>

</SOAP-ENV:BODY> </SOAP-ENV:ENVELOPE>

Page 50: SIMPRO V4 API

Customer Documentation

50 Customer Distribution

11.13 REMOVETARIFFHOLIDAY METHOD

To Apply Tariff Holiday for a sim you can use the removeTariffHoliday method, this returns a request number. The request for the removeTariffHoliday method requires the following parameters:

Name Description Type Example

identifiers An array of ICCIDs to change the customer solution for

String[] 894000000000000000

The response to removeTariffHoliday request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the remove tariff holiday request.

The following is an example request to the removeTariffHoliday method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAPENV:HEADER/> <SOAPENV:BODY>

<API:REMOVETARIFFHOLIDAY> <REMOVETARIFFHOLIDAYREQUEST>

<IDENTIFIERS> <!--ZERO OR MORE REPETITIONS:--> <ITEM>8931086214000000000</ITEM>

</IDENTIFIERS> </REMOVETARIFFHOLIDAYREQUEST>

</API:REMOVETARIFFHOLIDAY> </SOAPENV:BODY>

</SOAPENV:ENVELOPE>

The following is an example response from the removeTariffHoliday method

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:NS1="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAP-ENV:BODY> <NS1:REMOVETARIFFHOLIDAYRESPONSE>

<RETURN>113</RETURN> </NS1:REMOVETARIFFHOLIDAYRESPONSE>

</SOAP-ENV:BODY> </SOAP-ENV:ENVELOPE>

Page 51: SIMPRO V4 API

Customer Documentation

51 Customer Distribution

SECTION 12. LOCATIONS

These methods allow you to create requests within the SIMPro application to get location information.

12.1 GETCELLLOCATION METHOD

To get the GSM co-ordinates from a location area identity (LAI) and cell ID you can use the getCellLocation method. This method requires an extra permission adding to your account, please contact account management at Wireless Logic for more information.

The request for the getCellLocation method requires the following parameters:

Name Description Type Example

mcc The mobile country code (MCC) composed of a three decimal digit

string 100

mnc The mobile network code (MNC) that identifies the GSM PLMN in that country

string 10

lac The location area code (LAC) string 12345

cellid The cell id used to identify a base transceiver station or sector of a BTS within a LAC if not within a GSM network

string 67890

iccid An optional parameter – if you include the ICCID of a SIM we will store the location details against that SIM

string 89314404000028396027

The response to a getCellLocation request will contain the following parameters:

Name Description Type Example

longitude The longitude value float 1.00

latitude The latitude value float 1.00

altitude The altitude value float 1.00

A SOAP Fault is returned if there are any errors, such as authentication failure or there was a problem processing the location request.

Page 52: SIMPRO V4 API

Customer Documentation

52 Customer Distribution

The following is an example request to the getCellLocation method

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API=" HTTP://SIMPRO.WIRELESSLOGIC.COM/API /">

<SOAPENV:BODY> <API:GETCELLLOCATION>

<GETCELLLOCATIONREQUEST> <MCC>100</MCC> <MNC>10</MNC> <LAC>12345</LAC> <CELLID>67890</CELLID>

</GETCELLLOCATIONREQUEST> </API:GETCELLLOCATION>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 53: SIMPRO V4 API

Customer Documentation

53 Customer Distribution

SECTION 13. PUSH APIS

This section details the Push APIs available from SIMPro to you. To enable the Wireless Logic SIMPro API to make the call to your API you need to setup your API to accept a request and send a response that matches the parameters detailed in the sections below. You should enable basic authentication should you require calls to be authenticated – this is recommended.

The details of your API (URL and authentication details) will be agreed when you setup your agreement with Wireless Logic to use the SIMPro API. We currently only support making a SOAP request to your API.

13.1 REQUEST STATUS UPDATES

To receive updates regarding the status of the requests you have created you will need to implement a SOAP API of your own. This will then be called after each update of a request. This is called your Request Status Update Push API in SIMPro. The SOAP Body for the request will contain a SIMProRequestStatus object with the following parameters:

Name Description Type Example

requestNumber The request identifier – the number you received when you created the request

Integer 9999

requestStatus The overall status of the request based on the status of the individual requests

String complete

requestsFailed The number of requests that have failed

Integer 9999

requestsInProgress The number of requests that are in progress

Integer 9999

requestsComplete The number of requests that have successfully completed

Integer 9999

totalRequests The total number of requests Integer 9999

failedRequests The details of the failed requests FailedRequest[] n/a

The FailedRequest Type contains the following:

Name Description Type Example

sim The ICCID of the SIM that the request was made against

string 894000000000000000

Page 54: SIMPRO V4 API

Customer Documentation

54 Customer Distribution

errorMessage The last error message from

the request string Error

The following table details the requestStatus values:

Value Description

failed All request failed

partially_failed One or more requests failed,but some completed

in_progress One or more requests are in progress

complete All requests have been completed successfully

Your API must respond with the following SIMProRequestStatusResponse object:

Name Description Type Example

status If the execution was successful or not. True or False is returned. Boolean True

If your API responds with a status of false or fails to respond then the request will be attempted up to a maximum of 3 times, first after 1 minute then after 5 minutes and then finally after 30 minutes of the original request.

Page 55: SIMPRO V4 API

Customer Documentation

55 Customer Distribution

13.2 SWAP SIM TO DESPATCHED SIM INFO

When requesting a SIM Swap to a SIM that will be despatched by Wireless Logic you will need to know the new ICCIDs once the request is completed so that you are aware of which Connection has been transferred to which new SIM. This push API will be called once the SIMs are despatched from Wireless Logic. This is called your Swap SIM to Despatched SIM Push API in SIMPro.

The SOAP Body for the request will contain a SIMProSwapToDespatchedInfo object with the following parameters:

Name Description Type Example

SIMSwapInfo Array of SIMSwapInfo Objects SIMSwapInfo[] n/a

requestNumber The request identifier – the number you received when you created the request

integer 9999

The SIMSwapInfo Type contains the following:

Name Description Type Example

oldIccid The ICCID of the SIM that the request was made against

string 894000000000000000

newIccid The new ICCID the Connection is being transferred to

string 894000000000000000

Your API must respond with the following SIMProSwapToDespatchedInfoResponse object:

Name Description Type Example

status If the execution was successful or not. True or False is returned. Boolean True

If your API responds with a status of false or fails to respond then the request will be attempted up to a maximum of 3 times, first after 1 minute then after 5 minutes and then finally after 30 minutes of the original request.

Page 56: SIMPRO V4 API

Customer Documentation

56 Customer Distribution

13.3 USAGE ALERT

To receive usage alerts via an API push message you will need to implement a SOAP API of your own. This will then be called when a usage alert is triggered. This is called your Usage Alert Push API in SIMPro.

The SOAP Body for the request will contain an array with the following parameters:

Name Description Type Example

iccid The ICCID of the SIM string 89441234567890999

msisdn The MSISDN of the Connection string 441234567890

imsi The IMSI of the Connection string 891234567890

connectionStatus The current status of the Connection string Active

mno The name of the MNO of the SIM string Vodafone

tariff The name of the tariff for the Connection string WL-123

customField1 The custom field 1 value of the SIM string text

customField2 The custom field 2 value of the SIM string text

customField3 The custom field 3 value of the SIM string text

customField4 The custom field 4 value of the SIM string text

customField5 The custom field 5 value of the SIM string text

alertType The alert type, either “MSISDN Level”, “bill

If your API responds with a status of false or fails to respond then the request will be attempted up to a maximum of 3 times, first after 1 minute then after 5 minutes and then finally after 30 minutes of the original request.

Page 57: SIMPRO V4 API

Customer Documentation

57 Customer Distribution

SECTION 14. CANCELLATIONS

This section details cancellations methods available within SIMPro.

14.1 CANCELSIM METHOD

This method is used to cancel SIMs which are in or out of contract. If there is a cost associated with the cancellation then this can be pre-approved – this means that the cost of the cancellation will be accepted and the cancellation should go ahead. See below for methods to getting a quote before cancellations the SIMs.

The request for the cancelSIMs require the following parameters:

Name Description Type Example

Item CancellationItem Type array N/A

preApproved Set to true when fees should be approved automatically – if you enter false or omit this parameter and the cancellation would incur a cost the cancellation request will be rejected

boolean true

The CancellationItem type contains the following:

Name Description Type Example

Identifier The identifier (ICCID) of the SIM

string 894000000000000000

cancellationDate The date the SIM is to be cancelled, this must be at least tomorrow – we are unable to cancel SIMs today.

Date (YYYY-MM- DD) 2015-05-01

enableFullBar Whether a full bar should be applied to the SIM

boolean true

The response to a cancelSIMs request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

Page 58: SIMPRO V4 API

Customer Documentation

58 Customer Distribution

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/"

XMLNS:API="HTTP://SIMPROV4.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:CANCELSIMS>

<CANCELSIMSREQUEST>

<ITEMS> <ITEM>

</ITEM> </ITEMS>

<IDENTIFIER>894000000000000000</IDENTIFIER> <CANCELLATIONDATE>2015-05-01</CANCELLATIONDATE> <ENABLEFULLBAR>TRUE</ENABLEFULLBAR>

<PREAPPROVED>FALSE</PREAPPROVED> </CANCELSIMSREQUEST>

</API:CANCELSIMS> </SOAPENV:BODY>

</SOAPENV:ENVELOPE>

Page 59: SIMPRO V4 API

Customer Documentation

59 Customer Distribution

14.2 GETCANCELLATIONQUOTEMETHOD

This method is used to generate a cancellation quote for SIMs which are in or out of contract. The response contains a reference which can be used to later request actual cancellation of the associated SIMs

- In contract sim - more than 30 days left on their contract - Out of contract sim - the contract had expired or in its last month of line rental

For the cancellation request to begin, call the getCancellationQuoteRequest which returns getCancellationQuoteResponse. If there any issues with the SIM or cancellation date then an SOAP Fault is returned. The SIM can be barred by setting the enableFullBar to true.

The CancellationQuoteRequest type contains the following:

Name Description Type Example

Item Array of CancellationItem array n/a

The CancellationItem type contains the following:

Name Description Type Example

identifier The identifier (ICCID) of the SIM

string 894000000000000000

cancellationDate The date the SIM is to be cancelled, this must be at least tomorrow – we are unable to cancel SIMs today.

Date (YYYY-MM-DD) 2015-05-01

enableFullBar Whether a full bar should be applied to the SIM

boolean false

The GetCancellationQuoteResponse type contains the following

Name Description Type Example

quote The quote object array n/a

The CancellationQuote type contains the following:

Name Description Type Example

id The unique id of the quote int 1

items The CancellationQuoteItem details array N/A

Page 60: SIMPRO V4 API

Customer Documentation

60 Customer Distribution

inContractFee Total fee of SIMs in contract float 1.2

outOfContractFee Total fee of SIMs out of contract float 2.1

adminFees Total of admin fees float 1.2

totalFees Total fee - all together float 1.2

timeStamp The date the quote was created date 2015-05-01

The CancellationQuoteItem type contains the following:

Name Description Type Example

Identifier The identifier (ICCID) of the SIM string 894000000000000000

inContract True if the SIM is still in contract boolean true

adminFee Administration fee float 1.9

buyOutFee Buyout fee for in contract SIMs float 1.9

cancellationDate Date the SIM will be cancelled date 2015-05-01

enableFullBar True if full bar is applied to the SIM boolean N/A

The CancellationQuote contains a unique ID which is used as a reference as part of another request (cancelSIMsByQuoteReference) to ensure the cancellation occurs. The quote is only valid until the end of the day the quote is generated.

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPROV4.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:GETCANCELLATIONQUOTE>

<GETCANCELLATIONQUOTEREQUEST> <ITEMS>

<ITEM>

</ITEM>

</ITEMS>

<IDENTIFIER>89443011313244707250</IDENTIFIER> <CANCELLATIONDATE>2014-11-06</CANCELLATIONDATE> <ENABLEFULLBAR>TRUE</ENABLEFULLBAR>

</GETCANCELLATIONQUOTEREQUEST> </API:GETCANCELLATIONQUOTE>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 61: SIMPRO V4 API

Customer Documentation

61 Customer Distribution

Sample response:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPROV4.WIRELESSLOGIC.COM/API/"> <SOAPENV:BODY>

<API:GETCANCELLATIONQUOTERESPONSE> <RETURN>

<QUOTE> <ID>123</ID>

<ITEMS> <ITEM>

</ITEM>

<ITEM>

</ITEM> <ITEM>

</ITEM>

</ITEMS>

<IDENTIFIER>89443011313244707250</IDENTIFIER>

<INCONTRACT>FALSE</INCONTRACT> <ADMINFEE>10</ADMINFEE> <BUYOUTFEE>0</BUYOUTFEE> <CANCELLATIONDATE>2015-06-01</CANCELLATIONDATE>

<ENABLEFULLBAR>TRUE</ENABLEFULLBAR>

<IDENTIFIER>89443011313244707251</IDENTIFIER> <INCONTRACT>FALSE</INCONTRACT> <ADMINFEE>10</ADMINFEE> <BUYOUTFEE>0</BUYOUTFEE> <CANCELLATIONDATE>2015-06-01</CANCELLATIONDATE> <ENABLEFULLBAR>TRUE</ENABLEFULLBAR>

<IDENTIFIER>89443011313244707252</IDENTIFIER> <INCONTRACT>TRUE</INCONTRACT> <ADMINFEE>10</ADMINFEE> <BUYOUTFEE>20</BUYOUTFEE> <CANCELLATIONDATE>2015-06-01</CANCELLATIONDATE> <ENABLEFULLBAR>TRUE</ENABLEFULLBAR>

<INCONTRACTFEE>20</INCONTRACTFEE>

<OUTOFCONTRACTFEE>0</OUTOFCONTRACTFEE>

<ADMINFEES>30</ADMINFEES> <TOTALFEES>50</TOTALFEES> <TIMESTAMP>2015-04-30</TIMESTAMP>

</QUOTE> </RETURN>

</API:GETCANCELLATIONQUOTERESPONSE> </SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 62: SIMPRO V4 API

Customer Documentation

62 Customer Distribution

14.3 CANCELSIMSBYQUOTEID API

The cancelSIMsByQuoteId method is used to cancel sims based on a quote id generated using the getCancellationQuote method.

The request for the cancelSIMsByQuoteId method requires the following parameters:

Name Description Type Example

id A quote id returned by getCancellationQuote integer 123

The response to a cancelSIMsByQuoteId request will contain the following parameters:

Name Description Type Example

return A request number integer 9999

If a quote cannot be found, then an SOAP Fault is returned.

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPROV4.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <V3:CANCELSIMSBYQUOTEID> <ID>123</ID> </V3:CANCELSIMSBYQUOTEID>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 63: SIMPRO V4 API

Customer Documentation

63 Customer Distribution

14.4 STOPCANCELLATION

The stopCancellation method is used to stop cancellation started before. This method is allowed when proper permissions are set in application.

The request for the stopCancellation method requires the following parameters:

Name Description Type Example

identifier The identifier (ICCID or MSISDN) of the SIM string 894000000000000000

The response to a stopCancellation request will contain the following parameters:

Name Description Type Example

success Information about successful processing boolean true

If a SIM cannot be found, then an SOAP Fault is returned.

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY> <API:STOPCANCELLATION>

<STOPCANCELLATIONREQUEST> <IDENTIFIER>894000000000000000</IDENTIFIER>

</STOPCANCELLATIONREQUEST> </API:STOPCANCELLATION>

</SOAPENV:BODY> </SOAPENV:ENVELOPE>

Page 64: SIMPRO V4 API

Customer Documentation

64 Customer Distribution

SECTION 15. SIM GROUP

This section details Sim Group endpoints available within SIMPro.

15.1 CREATE SIM GROUP ENDPOINT

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY>

<API:CREATESIMGROUP>

<CREATESIMGROUPREQUEST>

<NAME>GROUP_NAME</NAME>

<PARENTSIMGROUPID>12345</PARENTSIMGROUPID>

</CREATESIMGROUPREQUEST>

</API:CREATESIMGROUP>

</SOAPENV:BODY>

</SOAPENV:ENVELOPE>

Sample response:

<?XML VERSION="1.0" ENCODING="UTF-8"?>

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:NS1="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAP-ENV:BODY>

<NS1:CREATESIMGROUPRESPONSE>

<RETURN>54321</RETURN>

</NS1:CREATESIMGROUPRESPONSE>

</SOAP-ENV:BODY>

</SOAP-ENV:ENVELOPE>

Page 65: SIMPRO V4 API

Customer Documentation

65 Customer Distribution

15.2 REMOVE SIM GROUP ENDPOINT

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY>

<API:REMOVESIMGROUP>

<REMOVESIMGROUPREQUEST>

<SIMGROUPID>54321</SIMGROUPID>

</REMOVESIMGROUPREQUEST>

</API:REMOVESIMGROUP>

</SOAPENV:BODY>

</SOAPENV:ENVELOPE>

Sample response:

<?XML VERSION="1.0" ENCODING="UTF-8"?>

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:NS1="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAP-ENV:BODY>

<NS1:REMOVESIMGROUPRESPONSE>

<RETURN>1</RETURN>

</NS1:REMOVESIMGROUPRESPONSE>

</SOAP-ENV:BODY>

</SOAP-ENV:Envelope>

Page 66: SIMPRO V4 API

Customer Documentation

66 Customer Distribution

15.3 ADD SIM TO SIM GROUP ENDPOINT

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY>

<API:ADDSIMTOSIMGROUP>

<ADDSIMTOSIMGROUPREQUEST>

<SIMGROUPID>54321</SIMGROUPID>

<SIMID>1234567890</SIMID>

</ADDSIMTOSIMGROUPREQUEST>

</API:ADDSIMTOSIMGROUP>

</SOAPENV:BODY>

</SOAPENV:ENVELOPE>

Sample response:

<?XML VERSION="1.0" ENCODING="UTF-8"?>

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:NS1="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAP-ENV:BODY>

<NS1:ADDSIMTOSIMGROUPRESPONSE>

<RETURN>1</RETURN>

</NS1:ADDSIMTOSIMGROUPRESPONSE>

</SOAP-ENV:BODY>

</SOAP-ENV:ENVELOPE>

Page 67: SIMPRO V4 API

Customer Documentation

67 Customer Distribution

15.4 REMOVE SIM FROM SIM GROUP ENDPOINT

Sample request:

<SOAPENV:ENVELOPE XMLNS:SOAPENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:API="HTTP://SIMPRO.WIRELESSLOGIC.COM/API/">

<SOAPENV:BODY>

<API:REMOVESIMFROMSIMGROUP>

<REMOVESIMFROMSIMGROUPREQUEST>

<SIMGROUPID>54321</SIMGROUPID>

<SIMID>1234567890</SIMID>

</REMOVESIMFROMSIMGROUPREQUEST>

</API:REMOVESIMFROMSIMGROUP>

</SOAPENV:BODY>

</SOAPENV:ENVELOPE>

Sample response:

<?XML VERSION="1.0" ENCODING="UTF-8"?>

<SOAP-ENV:ENVELOPE XMLNS:SOAP-ENV="HTTP://SCHEMAS.XMLSOAP.ORG/SOAP/ENVELOPE/" XMLNS:NS1="HTTP://SIMPRO4.WIRELESSLOGIC.COM/API/">

<SOAP-ENV:BODY>

<NS1:REMOVESIMFROMSIMGROUPRESPONSE>

<RETURN>1</RETURN>

</NS1:REMOVESIMFROMSIMGROUPRESPONSE>

</SOAP-ENV:BODY>

</SOAP-ENV:ENVELOPE>

Page 68: SIMPRO V4 API

Customer Documentation

68 Customer Distribution