Problem description
The current API description does not specify the API behaviour for multi-SIM scenarios (i.e. scenarios where multiple SIMs share the same primary MSISDN).
For the specified use cases for this API, it is reasonable for an API provider to always return or verify the primary MSISDN, irrespective of which device / SIM is being verified, as that is the MSISDN that will be known to the end user and hence shared with the API consumer.
Hence it can be expected that implementations exist that will always return or verify the primary MSISDN.
However, for some API consumers, particularly where the API is being used for security / fraud prevention, it may be important for them to know whether the device / SIM interacting with their application is the primary device (containing the primary SIM) or a secondary device (containing a secondary SIM).
Currently, they do not know if the device contains the primary or secondary SIM.
Possible evolution
An optional flag can be added to the response to indicate whether the device whose MSISDN is being retrieved or verified is the primary device or a secondary device.
For example:
{
"devicePhoneNumber": "+123456789",
"primaryDevice": true
}
Some possible definitions of primaryDevice that can be given to the API consumer could be:
- The device that the mobile subscription account holder would normally use for personal transactions (phone calls, messaging, direct but relatively short interactions with apps)
- The device that mobile subscription account holder would choose to keep if they could only have one mobile subscription
- The mobile subscription account holder's personal smartphone that only they use
Identification of the primaryDevice will therefore be somewhat subjective, but nonetheless it can be expected that the mobile subscription account holder will normally have one, and only one, "primary device" which can be identified with a reasonably high probability by the network operator.
Making the flag optional means this is not a breaking change for any API provider. If it is preferred to keep the response body consistent between implementations, the flag could be made mandatory, but allowed to take a null value for those API providers who do not want to support the feature.
Alternative solution
Support for the feature could be made a requirement by mandating the additional flag with no option to assign a null value
Additional context
None
Problem description
The current API description does not specify the API behaviour for multi-SIM scenarios (i.e. scenarios where multiple SIMs share the same primary MSISDN).
For the specified use cases for this API, it is reasonable for an API provider to always return or verify the primary MSISDN, irrespective of which device / SIM is being verified, as that is the MSISDN that will be known to the end user and hence shared with the API consumer.
Hence it can be expected that implementations exist that will always return or verify the primary MSISDN.
However, for some API consumers, particularly where the API is being used for security / fraud prevention, it may be important for them to know whether the device / SIM interacting with their application is the primary device (containing the primary SIM) or a secondary device (containing a secondary SIM).
Currently, they do not know if the device contains the primary or secondary SIM.
Possible evolution
An optional flag can be added to the response to indicate whether the device whose MSISDN is being retrieved or verified is the primary device or a secondary device.
For example:
Some possible definitions of
primaryDevicethat can be given to the API consumer could be:Identification of the
primaryDevicewill therefore be somewhat subjective, but nonetheless it can be expected that the mobile subscription account holder will normally have one, and only one, "primary device" which can be identified with a reasonably high probability by the network operator.Making the flag optional means this is not a breaking change for any API provider. If it is preferred to keep the response body consistent between implementations, the flag could be made mandatory, but allowed to take a
nullvalue for those API providers who do not want to support the feature.Alternative solution
Support for the feature could be made a requirement by mandating the additional flag with no option to assign a
nullvalueAdditional context
None