VIAMICHELIN SOAP API


Authentification

Overview


The access to the ViaMichelin SOAP API is restricted. To use the web service a client has to be authenticated. The authentication mechanism is designed with two control levels:
  • The first control level consists of validation of the user's name and password. The customer sends this information as an authentication identifier in a specific input parameter named "check" of each ViaMichelin SOAP API request. This authentication identifier can be defined either as a formatted string (login + '|' character + password : "LOGIN|PASSWORD"), or as an encrypted string to minimize the probability that an unauthorized user can steal the customer's authentication information (to obtain a valid encrypted string the customer must call one of the getAuthenticationId methods of the AccessManagement VIAMICHELIN SOAP API over HTTPS). If the user's name and password are valid then the second control level is executed. Otherwise, a SOAP fault exception is returned.


  • The second control level is optional and consists of the control of the IP address of the request origin. If the IP address corresponds to one of the addresses defined for the customer, then the use of the service is allowed. Otherwise, a SOAP fault exception is returned. If none of the IP address is associated to a customer, then the control will not be made.

WSDL

The WSDL (Web Services Description Language) describes the behaviour of the Web Service and instructs how to interact with it. It appears as an XML formatted file for each VIAMICHELIN SOAP API Service. 
You can consult the «AccessManagement» WSDL file at the following URL: 

https://webservices.viamichelin.com/ws2/services/AccessManagement?wsdl 

This file is also included in the «Ressources\WSDL» sub-directory in the SDK.

Defined methods

getAuthenticationId(login, password, duration)

getAuthenticationId(login, password)

getDuration(athenticationId)

getAuthenticationId(login, password, duration) method

Description 

This method lets you obtain a valid authentication identifier defined as an encrypted string available during a validity period. This encrypted string can be used to set the specific input parameter named "check" of each request mandatory to authenticate the customer. 
Specifications 

  • The maximum value of duration parameter is 2880 minutes. Beyond this limit, a SOAP fault is returned.

Input Parameters 

 Parameter  Mandatory  Description
login
(String)
true Specifies the customer's login.
password
(String)
true Specifies the customer's password.
duration
(int)
true Specifies the validity period (in minutes) of the result. Maximum allowed is 2880 minutes.

Output Parameter 

 Parameter  Description
String An encrypted string defining the customer authentication identifier.

Notes 

This method can be call only over HTTPS. 

 

Errors 

 Error code  Description  Possible problems
1 Access denied - the supplied authentication informations are not valid.
3 Abnormal service termination - internal problem


Code sample (Java) 

AccessManagementServiceLocator locator = new AccessManagementServiceLocator();
AccessManagement service = locator.getAccessManagement();
String authId = service.getAuthenticationId("YOUR_LOGIN", "YOUR_PASSWORD", 60);

Code sample (VB.NET)
Will be available in a future version

Code sample (C#.NET)
Will be available in a future version


getAuthenticationId(login, password) method
Description 

This method lets you obtain a valid authentication identifier as an encrypted string available during the default validity period (120 minutes). This encrypted string can be used to set the specific input parameter named "check" of each request mandatory to authenticate the customer. 

 

Input Parameters 

 Parameter  Mandatory  Description
login
(String)
true Specifies the customer's login.
password
(String)
true Specifies the customer's password.

Output Parameter 

 Parameter  Description
String An encrypted string defining the customer authentication identifier.

Notes 

This method can be call only over HTTPS. 
Errors 

 Error code  Description  Possible problems
1 Access denied - the supplied authentication informations are not valid.
3 Abnormal service termination - internal problem


Code sample (Java) 

AccessManagementServiceLocator locator = new AccessManagementServiceLocator();
AccessManagement service = locator.getAccessManagement();
String authId = service.getAuthenticationId("YOUR_LOGIN", "YOUR_PASSWORD");

Code sample (VB.NET)
Will be available in a future version

Code sample (C#.NET)
Will be available in a future version


getDuration (athenticationId) method

Description 

This method returns the number of remaining minutes of validity for an authentication identifier. 

 

Input Parameters 

 Parameter  Mandatory  Description
athenticationId
(String)
true Specifies the authentication identifier.

Output Parameter 

 Parameter  Description
int the number of remaining minutes.

Errors 

 Error code  Description  Possible problems
1000 Invalid parameter - the authentication identifier is not valid.
3 Abnormal service termination - internal problem


Code sample (Java) 

AccessManagementServiceLocator locator = new AccessManagementServiceLocator();
AccessManagement service = locator.getAccessManagement();
int nbMinutes = service.getDuration(athenticationId);

Code sample (VB.NET)
Will be available in a future version

Code sample (C#.NET)
Will be available in a future version