simpro v4 api
TRANSCRIPT
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
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
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
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
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
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
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.
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>
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>
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
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
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
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>
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
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>
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
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>
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:
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
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
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>
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
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>
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
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>
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>
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>
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
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>
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
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
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>
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
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
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>
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>
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>
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>
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>
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>
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>
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.
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>
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
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.
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.
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.
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
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>
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
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>
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>
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>
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>
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>
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>
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>
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>
Customer Documentation
68 Customer Distribution