-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Default retrieve-date value #19
Comments
Let me propose something slightly different:
Proposed rewording: POST retrieve-date: Provides timestamp of latest device swap for a given phone number. If no device swap has been performed, the API will return the first phone number usage in the device (the timestamp of the first time that the phone number was connected to the network, it is, the first time that the SIM is installed in the device) by default. It will return an empty string in case is not possible to retrieve the date (e.g. in case local regulations are preventing the safekeeping of the information for longer than the stated period, or in some edge error cases). In case no data is available in the operators records (e.g. no recorded event), API will return an error. POST check: Checks if device swap has been performed during a past period (defined in the request with 'maxAge' attribute) for a given phone number, the API will return boolean response (true/false), indicating that the device has been swapped or not in the specified period. |
Hi @jgarciahospital thank you for feedback! |
OK then for retrieve-date. Not sure @bigludo7 or @rartych if you have any opinion on error management for those cases, if 404 can be a good approach or we need to think on other. For check, I still believe the the lack of SIM activation shall be technically and commercially considered as a false response. If operator has a database error, and e.g. MSISDN cannot be found, 404 still applies of course, but the exact case of no device activation IMHO should be a false. |
Just to close final understanding on this, is the proposal agreeable by all?
@StefanoFalsetto-CKHIOD are you ok with the final statement? (false in case there is no record because SIM was never user, error if database error) |
Hello |
OK with 422. About the other case, based on the information-limitation rules that we usually follow in CAMARA, I prefer to maintain ourselves in the empty response (we can review it when including monitoredPeriod approach). If we include "never installed" information we'd be providing detailed information that the developer has not asked for. |
422 is OK for me too. |
Let me then propose:
Let me know if you're ok with this to propose a PR, hopefully we can freeze the code today. |
@jgarciahospital In retrieve-date we are returning 422 in case of no recorded event while in check we are returning 422 for a database error. I am very sorry to slow down the process but I am a bit confused.
And thank you for your patience. |
4&5 and 8&9 seem the same for me, since the lack of record in database (if it's not related to the MISSDN never installed) is a lack of information, it is an error. The main important point of difference is between case 1 and 6, but it's just because of the request that it is answering.
|
Ah thank you @jgarciahospital now it is more clear to me. I have just a question: how can you distinguish between case 1 and 2? If in case 2 the data has been removed from BSS for legal reasons, does it not became the same of case 1? |
As per my understanding, in case 2 the record is in the database but the regulatory limitation prevents it to be shared. But the data is there. |
Ok understood. |
Included final text in #21, please confirm if it's enough or more description is required. |
Sorry I'm not able to react as quickly ;) For case 2 we have here same behavior than SimSwap. It means that
For all 422 (cases 1,4,5,8,9) are we agree to send code For 6 I'm still challenging the 200 here. From UC perspective if we're in AntiFraud domain didn't look to you odd to send back |
Hi Ludovic! For case 2 we decided in this group to wait and not include monitoredPeriod yet, maybe aligning with Sim Swap by spring25 when both will include it, so I prefer maintaining the same behaviour as current SIM Swap case. DEVICE_NOT_APPLICABLE seems ok. Do we need to add that as error example? For the case 6... for sure it is a small corner case. It's true that a MSISDN not activated provides not much value itself, so maybe an error could fit better. |
Updated in #21. Seems better aligned between the two endpoints now. For your validation @bigludo7 @StefanoFalsetto-CKHIOD |
Thanks @jgarciahospital
Yes this is true. I just raised the case because the update is (almost) done in SimSwap. I'm prefectly fine with your preference to tab this for later.
For me we have it already in the yaml in 422
Yes this is also my view - Thanks Jorge ! |
No problem @bigludo7 :) |
Aligned then. If Ok I propose to merge last PR and consider API yaml as agreed, ok? |
Yes aligned. If not issue for you i prefer to wait till Tuesday EOB to let eventually other feedback. WDYT? |
OK for me wait until Tuesday EOB. |
For clarity, this would be the updated scenario's summary (right?):
|
Yes this is right for me. |
Hello guys, As agreed, we merge the PR with the agreed text. I'll also proceed to create the RC proposal for the API. We'll be including API test plans also for the formal release. |
Hi All,
I am reading the following definition of return values:
endpoint:
DeviceSwap/code/API_definitions/device-swap.yaml
Lines 28 to 30 in 57f7e42
Currently it states:
I think we can improve it:
So my proposal is:
POST retrieve-date: Provides timestamp of latest device swap for a given phone number. If no device swap has been performed, the API will return the first phone number usage in the device (the timestamp of the first time that the phone number was connected to the network, it is, the first time that the SIM is installed in the device) by default. It will return an empty string in case is not possible to retrieve the date (e.g., in case the SIM has never been installed in the device, or in case local regulations are preventing the safekeeping of the information for longer than the stated period, or in some edge error cases)
POST check: Checks if device swap has been performed during a past period (defined in the request with 'maxAge' attribute) for a given phone number, the API will return boolean response (true/false), indicating that the device has been swapped or not in the specified period. It will return an empty string in case it is not possible to retrieve the device change date.
What do you think?
The text was updated successfully, but these errors were encountered: