Skip to content

Commit 74e75a9

Browse files
Merge pull request #179 from fernandopradocabrillo/prepare-r2.4
Preparations for release r2.4
2 parents 9b4a72b + 72cab64 commit 74e75a9

8 files changed

+64
-46
lines changed

CHANGELOG.md

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33

44
## Table of contents
55

6-
- **[r2.3](#r23)**
6+
- **[r2.4](#r24) Spring25**
7+
- ~~[r2.3](#r23)~~
78
- **[r2.2](#r22)**
89
- **[r2.1](#r21)**
9-
- **[r1.3](#r13)**
10+
- **[r1.3](#r13) Fall24**
1011
- **[r1.2](#r12)**
1112
- **[r1.1](#r11)**
1213
- **[v0.3.1](#v031)**
@@ -21,44 +22,60 @@ The below sections record the changes for each API version in each release as fo
2122
* for subsequent release-candidate(s), only the delta to the previous release-candidate
2223
* for a public release, the consolidated changes since the previous public release
2324

24-
# r2.3
25+
# r2.4
2526

2627
## Release Notes
2728

28-
This public release contains the definition and documentation of
29-
* number-verification 1.1.0
29+
This **public release** contains the definition and documentation of
30+
* number-verification 2.0.0
3031

3132
The API definition(s) are based on
3233
* Commonalities v0.5.0
3334
* Identity and Consent Management v0.3.0
3435

35-
## number-verification 1.1.0
36+
## number-verification 2.0.0
3637

37-
**number-verification 1.1.0 is the release for v1.1.0 of the NumberVerification API.**
38+
**number-verification 2.0.0 is the public release for v2.0.0 of the NumberVerification API.**
39+
40+
The NumberVerification API version has been upgraded from previous v1.0.0 to v2.0.0 even though the functionality updates included in this version do not contain any breaking change.
41+
However, the inclusion of a new supported authentication method (CIBA+TS.43 temporary token) to enable the use of the API over Wifi, justifies the generation of a new major version of the API.
3842

3943
- API definition **with inline documentation**:
40-
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.3/code/API_definitions/number-verification.yaml&nocors)
41-
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.3/code/API_definitions/number-verification.yaml)
42-
- OpenAPI [YAML spec file](https://github.com/camaraproject/NumberVerification/blob/r2.3/code/API_definitions/number-verification.yaml)
44+
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.4/code/API_definitions/number-verification.yaml&nocors)
45+
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.4/code/API_definitions/number-verification.yaml)
46+
- OpenAPI [YAML spec file](https://github.com/camaraproject/NumberVerification/blob/r2.4/code/API_definitions/number-verification.yaml)
4347

44-
Changes included in v1.1.0 compared to v1.0.0
48+
Changes included in v2.0.0 compared to v1.0.0
4549

4650
### Changed
4751

4852
- Align error list & model with comm 0.5 by @bigludo7 in https://github.com/camaraproject/NumberVerification/pull/161
4953
- Add a pattern for x-correlator allowing zero-length string by @bigludo7 in https://github.com/camaraproject/NumberVerification/pull/164
5054
- servers.url format aligned with current guidelines (`'{apiRoot}/number-verification/v1rc2'`) by @hdamker in https://github.com/camaraproject/NumberVerification/issues/169
5155
- Link into main branch replaced with link into release branch by @hdamker in https://github.com/camaraproject/NumberVerification/issues/169
56+
- NumberVerification over WiFi by @AxelNennker in https://github.com/camaraproject/NumberVerification/pull/174
5257

5358
### Removed
5459

5560
- Remove 403 INVALID_TOKEN_CONTEXT by @bigludo7 in https://github.com/camaraproject/NumberVerification/pull/163
5661

57-
**Full Changelog** between v1.1.0 and v1.0.0: https://github.com/camaraproject/NumberVerification/compare/r1.3...r2.3
62+
**Full Changelog** between v2.0.0 and v1.0.0: https://github.com/camaraproject/NumberVerification/compare/r1.3...r2.4
5863

5964
## New Contributors
6065
* @hdamker made their first contribution by servers.url format aligned with current guidelines (`'{apiRoot}/number-verification/v1rc2'`)
6166

67+
# ~~r2.3~~
68+
69+
**Release r2.3 has been revoked and removed in favor of the release r2.4**
70+
71+
Following the recent approval of TS.43 temporary tokens usage in the ICM workgroup, it has been decided that this API will support them, enabling authentication over WiFi networks.
72+
73+
As a result, in release r2.4, both authentication methods are now available:
74+
- AuthCode + network-based authentication
75+
- CIBA + TS.43 temporary tokens
76+
77+
r2.4 is the official public release for Spring25 meta-release.
78+
6279
# r2.2
6380

6481
## Release Notes

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99

1010
# NumberVerification
1111

12-
Incubating API Repository to evolve and maintain the definitions and documentation of the NumberVerification API family
12+
Incubating API Repository to evolve and maintain the definitions and documentation of the NumberVerification API
1313
* API Repository wiki page: https://lf-camaraproject.atlassian.net/wiki/spaces/CAM/pages/14562399/NumberVerification
1414

1515
## Scope
1616

1717
* Service APIs for “NumberVerification” (see APIBacklog.md)
18-
* It provides the customer with the ability to:
18+
* It provides the API Provider with the ability to:
1919
* verify the phone number associated with the SIM used in the device connected to the mobile data network.
2020
* Describe, develop, document and test the APIs (with 1-2 Telcos)
2121
* Started: October 2022
@@ -26,11 +26,11 @@ Incubating API Repository to evolve and maintain the definitions and documentati
2626

2727
* Note: Please be aware that the project will have frequent updates to the main branch. There are no compatibility guarantees associated with code in any branch, including main, until a new release is created. For example, changes may be reverted before a release is created. **For best results, use the latest available release**.
2828

29-
* The public release r2.3 with version 1.1.0 of the API number-verification is available [here](https://github.com/camaraproject/NumberVerification/tree/r2.3)
30-
- 1.1.0 Number Verification definition **with inline documentation**:
31-
- OpenAPI [YAML spec file](https://github.com/camaraproject/NumberVerification/blob/r2.3/code/API_definitions/number-verification.yaml)
32-
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.3/code/API_definitions/number-verification.yaml&nocors)
33-
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.3/code/API_definitions/number-verification.yaml)
29+
* The public release r2.4 with version 2.0.0 of the API number-verification is available [here](https://github.com/camaraproject/NumberVerification/tree/r2.4)
30+
- 2.0.0 Number Verification definition **with inline documentation**:
31+
- OpenAPI [YAML spec file](https://github.com/camaraproject/NumberVerification/blob/r2.4/code/API_definitions/number-verification.yaml)
32+
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.4/code/API_definitions/number-verification.yaml&nocors)
33+
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.4/code/API_definitions/number-verification.yaml)
3434

3535
* Previous releases and pre-releases of the repository are available in https://github.com/camaraproject/NumberVerification/releases
3636
* For changes see [CHANGELOG.md](https://github.com/camaraproject/NumberVerification/blob/main/CHANGELOG.md)

code/API_definitions/number-verification.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ info:
4747
4848
The following sequence diagram shows an example of a direct integration into the developer's application and the API Provider's Authorization Server and API for the case that no temporary token is available.
4949
50-
![UML Sequence Diagram](https://raw.githubusercontent.com/camaraproject/NumberVerification/main/documentation/API_documentation/assets/uml_v0.3.jpg)
50+
![UML Sequence Diagram](https://raw.githubusercontent.com/camaraproject/NumberVerification/r2.4/documentation/API_documentation/assets/uml_v0.3.jpg)
5151
5252
**Implementation Details:**
5353
@@ -72,7 +72,7 @@ info:
7272
7373
In the case of the Number Verification API scenario and according to the API definition, 3-legged access tokens must be used by API clients to invoke this API with dedicated scope. The API client must authenticate on behalf of a specific user to use this service. This must be done via mobile network authentication.
7474
75-
version: wip
75+
version: 2.0.0
7676
x-camara-commonalities: 0.5
7777
license:
7878
name: Apache 2.0
@@ -81,7 +81,7 @@ externalDocs:
8181
description: Project documentation at CAMARA
8282
url: https://github.com/camaraproject/NumberVerification
8383
servers:
84-
- url: '{apiRoot}/number-verification/vwip'
84+
- url: '{apiRoot}/number-verification/v2'
8585
variables:
8686
apiRoot:
8787
default: http://localhost:9091

code/Test_Definitions/number-verification-device-phone-number-share.feature

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
@NumberVerification_device_phone_number_share
2-
Feature: Camara Number Verification API device phone number share
1+
Feature: CAMARA Number Verification API, v2.0.0 - Operation phoneNumberShare
32

43
# Input to be provided by the implementation to the tests
54
# References to OAS spec schemas refer to schemas specified in
@@ -13,7 +12,7 @@ Feature: Camara Number Verification API device phone number share
1312
# * a mobile device with SIM card with NUMBERVERIFY_SHARE_PHONENUMBER2
1413

1514
Background: Common Number Verification phone number share setup
16-
Given the resource "/device-phone-number/vwip" as base url
15+
Given the resource "/device-phone-number/v2" as base url
1716
And the header "Content-Type" is set to "application/json"
1817
And the header "Authorization" is set to a valid access token
1918
And the header "x-correlator" is set to a UUID value
@@ -86,18 +85,18 @@ Feature: Camara Number Verification API device phone number share
8685
# And the response property "$.code" is "INVALID_TOKEN_CONTEXT"
8786
# And the response property "$.message" is "Phone number cannot be deducted from access token context."
8887

89-
@NumberVerification_phone_number_share205_must_have_used_network_authentication
90-
Scenario: share phone number with valid access token but network authentication was not used
88+
@NumberVerification_phone_number_share205_must_have_used_network_or_sim_based_authentication
89+
Scenario: share phone number with valid access token but neither Network-Based authentication nor SIM-Based authentication was used
9190
Given they use the base url
9291
And the resource is "/device-phone-number"
9392
And one of the scopes associated with the access token is number-verification:verify
9493
When the HTTPS "GET" request is sent
9594
And the connection the request is sent over originates from a device with NUMBERVERIFY_VERIFY_MATCH_PHONENUMBER1
96-
And the information, e.g. authentication method reference, associated with the access token indicates that network authentication was NOT used
95+
And the information, e.g. authentication method reference, associated with the access token indicates that neither Network-based nor SIM-based authentication was used
9796
And the response header "x-correlator" has same value as the request header "x-correlator"
9897
And the response header "Content-Type" is "application/json"
9998
And the response body complies with the OAS schema at "/components/schemas/ErrorInfo"
10099
Then the response status code is 403
101100
And the response property "$.status" is 403
102101
And the response property "$.code" is "NUMBER_VERIFICATION.USER_NOT_AUTHENTICATED_BY_MOBILE_NETWORK"
103-
And the response property "$.message" is "The subscription must be identified via the mobile network to use this servicet."
102+
And the response property "$.message" is "The subscription must be identified using either Network-based authentication or SIM-based authentication to access this service."

code/Test_Definitions/number-verification-verify.feature

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
@NumberVerification_verify
2-
Feature: Camara Number Verification API verify
1+
Feature: CAMARA Number Verification API, v2.0.0 - Operation phoneNumberVerify
32

43
# Input to be provided by the implementation to the tests
54
# References to OAS spec schemas refer to schemas specified in
@@ -15,7 +14,7 @@ Feature: Camara Number Verification API verify
1514
# * a mobile device with SIM card with NUMBERVERIFY_VERIFY_MATCH_PHONENUMBER_HASHED2
1615

1716
Background: Common Number Verification verify setup
18-
Given the resource "/number-verification/vwip" as base url
17+
Given the resource "/number-verification/v2" as base url
1918
And the header "Content-Type" is set to "application/json"
2019
And the header "Authorization" is set to a valid access token
2120
And the header "x-correlator" is set to a UUID value
@@ -184,18 +183,18 @@ Feature: Camara Number Verification API verify
184183
# And the response property "$.code" is "INVALID_TOKEN_CONTEXT"
185184
# And the response property "$.message" is "Phone number cannot be deducted from access token context."
186185

187-
@NumberVerification_phone_number_verify205_must_have_used_network_authentication
188-
Scenario: verify phone number with valid access token but network authentication was not used
186+
@NumberVerification_phone_number_verify205_must_have_used_network_or_sim_based_authentication
187+
Scenario: verify phone number with valid access token but neither Network-Based authentication nor SIM-Based authentication was used
189188
Given they use the base url
190189
And the resource is "/verify"
191190
And one of the scopes associated with the access token is number-verification:verify
192191
When the HTTPS "GET" request is sent
193192
And the connection the request is sent over originates from a device with NUMBERVERIFY_VERIFY_MATCH_PHONENUMBER1
194-
And the information, e.g. authentication method reference, associated with the access token indicates that network authentication was NOT used
193+
And the information, e.g. authentication method reference, associated with the access token indicates that neither Network-based nor SIM-based authentication was used
195194
And the response header "x-correlator" has same value as the request header "x-correlator"
196195
And the response header "Content-Type" is "application/json"
197196
And the response body complies with the OAS schema at "/components/schemas/ErrorInfo"
198197
Then the response status code is 403
199198
And the response property "$.status" is 403
200199
And the response property "$.code" is "NUMBER_VERIFICATION.USER_NOT_AUTHENTICATED_BY_MOBILE_NETWORK"
201-
And the response property "$.message" is "The subscription must be identified via the mobile network to use this servicet."
200+
And the response property "$.message" is "The subscription must be identified using either Network-based authentication or SIM-based authentication to access this service."

documentation/API_documentation/NumberVerification_device_phone_number_User_Story.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
| **Item** | **Details** |
44
| ---- | ------- |
5-
| ***Summary*** | As an application developer, I want to retrieve the phone number associated with a mobile connection. I use client credentials to authenticate and provide e.g. the IP address of the mobile connection. |
5+
| ***Summary*** | As an application developer, I want to retrieve the phone number associated with a mobile connection from which the API call was made, so that I can ensure that I obtain the correct phone number and avoid fraud e.g. identity theft. |
66
| ***Actors and Scope*** | **Actors:** Application service provider (ASP), ASP:User, ASP: BusinessManager, ASP:Administrator, Channel Partner, End-User, Communication Service Provider (CSP). <br>**Scope:** <br>-Returns the phone number associated with the access token so the ASPs can get the phone number and verify it themselves.|
77
| ***Pre-conditions*** |The preconditions are listed below:<br><ol><li>The ASP:BusinessManager and ASP:Administrator have been onboarded to the CSP's API platform via (or not) a Channel Partner.</li><li>The ASP:BusinessManager has successfully subscribed to the Number Verification product from the CSP's product catalog via (or not) a Channel Partner.</li><li>The ASP:Administrator has onboarded the ASP:User to the CSP API platform via (or not) a Channel Partner.</li><li>The ASP:User performs an authorization request to CSP.</li><li> The CSP checks access & End-User approval then provide access token to the ASP:User </li><li> The ASP:User get the access token, via (or not) the Channel Partner, based on network authentication to ensure secure access of the API.|
8-
| ***Activities/Steps*** | **Starts when:** The ASP:User makes a POST request via the number verification API. This request could be done via (or not) the Channel Partner.<br>**Ends when:** The CSP's Number Verification Server answers providing the phone number corresponding to the one of the end-user's device from which the request was triggered. The ASP:User can check if this number corresponds to the one keyed by the End-User.|
8+
| ***Activities/Steps*** | **Starts when:** The ASP:User makes a POST request via the number verification API. This request could be done via (or not) the Channel Partner.<br>**Ends when:** The CSP's Number Verification Server answers providing the phone number corresponding to the one of the end-user's device from which the request was triggered. The ASP:User can check if this number corresponds to the one keyed by the End-User. |
99
| ***Post-conditions*** | The ASP:User could continue offering its service to the End-User with the confirmation of the End-User phone number. |
10-
| ***Exceptions*** | Several exceptions might occur during the Number Verification API operations<br>- Unauthorized: Not valid credentials (e.g. use of already expired access token).<br>- Invalid input: Not valid input data to invoke operation (e.g. phone number without the '+' prefix).<br>- Not able to provide: Client authentication was not performed via mobile network. Not working on mobile hotspot (tethering) neither Wifi nor VPN mobile connections|
10+
| ***Exceptions*** | Several exceptions might occur during the Number Verification API operations<br>- Unauthorized: Not valid credentials (e.g. use of already expired access token).<br>- Not able to provide: Client authentication was not performed via mobile network or temporary token. Not working on mobile hotspot (tethering) neither Wifi nor VPN mobile connections **if client authentication is performed via mobile network** |

0 commit comments

Comments
 (0)