diff --git a/doc/testing/testplan/api_auditing_service/README.md b/doc/testing/testplan/api_auditing_service/README.md index 8b856af654eaafcea001a11dedf8a23bbaffc43e..0588e8effe25062351067d9c3c13f142f9e0a3fe 100644 --- a/doc/testing/testplan/api_auditing_service/README.md +++ b/doc/testing/testplan/api_auditing_service/README.md @@ -16,29 +16,29 @@ At this documentation you will have all information and related files and exampl * Invoker exist in CAPIF * Log Entry exist in CAPIF +**Execution Steps**: + 1. Register Provider and Invoker CCF + 2. Publish Service + 3. Create Log Entry + 4. Get Log Entry + **Information of Test**: 1. Perform [provider onboarding], [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Create Log Entry: - - Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + - Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** - body [log entry request body] - - Use AEF Certificate + - Use **AEF Certificate** 4. Get Log: - 1. Send GET to *https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}* - 2. Use AMF Certificate - -**Execution Steps**: - 1. Register Provider and Invoker CCF - 2. Publish Service - 3. Create Log Entry - 4. Get Log Entry + 1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}** + 2. Use **AMF Certificate** **Expected Result**: @@ -63,23 +63,23 @@ At this documentation you will have all information and related files and exampl * Service exist in CAPIF * Invoker exist in CAPIF +**Execution Steps**: + 1. Register Provider and Invoker CCF + 2. Publish Service + 3. Get Log Entry + **Information of Test**: 1. Perform [provider onboarding], [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate - - 4. Get Log: - 1. Send GET to *https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}* - 2. Use AMF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** -**Execution Steps**: - 1. Register Provider and Invoker CCF - 2. Publish Service - 3. Get Log Entry + 3. Get Log: + 1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}** + 2. Use **AMF Certificate** **Expected Result**: @@ -106,29 +106,29 @@ At this documentation you will have all information and related files and exampl * Invoker exist in CAPIF * Log Entry exist in CAPIF +**Execution Steps**: + 1. Register Provider and Invoker CCF + 2. Publish Service + 3. Create Log Entry + 4. Get Log Entry + **Information of Test**: 1. Perform [provider onboarding], [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Create Log Entry: - - Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + - Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** - body [log entry request body] - - Use AEF Certificate + - Use **AEF Certificate** 4. Get Log: - 1. Send GET to *https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs - 2. Use AMF Certificate - -**Execution Steps**: - 1. Register Provider and Invoker CCF - 2. Publish Service - 3. Create Log Entry - 4. Get Log Entry + 1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs** + 2. Use **AMF Certificate** **Expected Result**: @@ -156,29 +156,29 @@ At this documentation you will have all information and related files and exampl * Invoker exist in CAPIF * Log Entry exist in CAPIF +**Execution Steps**: + 1. Register Provider and Invoker CCF + 2. Publish Service + 3. Create Log Entry + 4. Get Log Entry + **Information of Test**: 1. Perform [provider onboarding], [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Create Log Entry: - - Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + - Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** - body [log entry request body] - - Use AEF Certificate + - Use **AEF Certificate** 4. Get Log: - 1. Send GET to *https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}&api-version={v1}* - 2. Use AMF Certificate - -**Execution Steps**: - 1. Register Provider and Invoker CCF - 2. Publish Service - 3. Create Log Entry - 4. Get Log Entry + 1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}&api-version={v1}** + 2. Use **AMF Certificate** **Expected Result**: @@ -205,29 +205,29 @@ At this documentation you will have all information and related files and exampl * Invoker exist in CAPIF * Log Entry exist in CAPIF +**Execution Steps**: + 1. Register Provider and Invoker CCF + 2. Publish Service + 3. Create Log Entry + 4. Get Log Entry + **Information of Test**: 1. Perform [provider onboarding], [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Create Log Entry: - - Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + - Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** - body [log entry request body] - - Use AEF Certificate + - Use **AEF Certificate** 4. Get Log: - 1. Send GET to *https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}&api-version={v58}* - 2. Use AMF Certificate - -**Execution Steps**: - 1. Register Provider and Invoker CCF - 2. Publish Service - 3. Create Log Entry - 4. Get Log Entry + 1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}&api-version={v58}** + 2. Use **AMF Certificate** **Expected Result**: diff --git a/doc/testing/testplan/api_discover_service/README.md b/doc/testing/testplan/api_discover_service/README.md index aaef9ab4fc5ef557cfa83996b7e485b252ee9ea7..7aa1d8443586443327a42e01d91db919b476be9a 100644 --- a/doc/testing/testplan/api_discover_service/README.md +++ b/doc/testing/testplan/api_discover_service/README.md @@ -19,13 +19,13 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs: - * Send GET to *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Use Invoker Certificate + * Use **Invoker Certificate** **Execution Steps**: @@ -39,14 +39,14 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Onboard request must accomplish: 1. **201 Created** 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 3. Response to Discover Request By Invoker: 1. **200 OK** response. 2. Response body must follow **DiscoveredAPIs** data structure: @@ -69,13 +69,13 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs by no invoker entity: - * Send GET to *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Use not Invoker Certificate + * Use not **Invoker Certificate** **Execution Steps**: @@ -89,14 +89,14 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Onboard request must accomplish: 1. **201 Created** 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 3. Response to Discover Request By no invoker entity: 1. **401 Unauthorized** @@ -123,13 +123,13 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs with not valid apiInvoker: - * Send GET to *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={INVOKER_NOT_REGISTERED}* + * Send **GET** to **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={INVOKER_NOT_REGISTERED}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** **Execution Steps**: @@ -143,14 +143,14 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Onboard request must accomplish: 1. **201 Created** 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 3. Response to Discover Request By Invoker: 1. **404 Not Found** @@ -179,25 +179,25 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_2 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_2** + * Use **APF Certificate** 4. Request Discover Published APIs filtering by api-name: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}&api-name=service_1* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}&api-name=**service_1** * Param api-invoker-id is mandatory - * Using invoker certificate - * filter by api-name service_1 + * Using **Invoker Certificate** + * filter by api-name **service_1** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 and service_2 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** and **service_2** at CCF 2. Register Invoker and Onboard Invoker at CCF 3. Discover Service APIs by Invoker. - 4. Discover filtered by api-name service_1 Service APIs by Invoker + 4. Discover filtered by api-name **service_1** Service APIs by Invoker **Expected Result**: @@ -205,13 +205,13 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Onboard request must accomplish: 1. **201 Created** 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 3. Response to Discover Request By Invoker: 1. **200 OK** response. 2. Response body must follow **DiscoveredAPIs** data structure: @@ -219,7 +219,7 @@ At this documentation you will have all information and related files and exampl 4. Response to Discover Request By Invoker: 1. **200 OK** response. 2. Response body must follow **DiscoveredAPIs** data structure: - * Check if DiscoveredAPIs contains only Service API published with api-name service_1 + * Check if DiscoveredAPIs contains only Service API published with api-name **service_1** ## Test Case 5: Discover Published service APIs by registered API Invoker filtered with no match @@ -240,22 +240,22 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_2 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_2** + * Use **APF Certificate** 4. Request Discover Published APIs filtering by api-name not published: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}&api-name=NOT_VALID_NAME* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}&api-name=NOT_VALID_NAME** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** * filter by api-name NOT_VALID_NAME **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 and service_2 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** and **service_2** at CCF 2. Register Invoker and Onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Discover filtered by api-name not published Service APIs by Invoker @@ -266,13 +266,13 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Onboard request must accomplish: 1. **201 Created** 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 3. Response to Discover Request By Invoker: 1. **200 OK** response. 2. Response body must follow **DiscoveredAPIs** data structure: @@ -304,21 +304,21 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_2 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_2** + * Use **APF Certificate** 4. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 and service_2 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** and **service_2** at CCF 2. Register Invoker and Onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Discover without filter by Invoker @@ -329,14 +329,14 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Onboard request must accomplish: 1. **201 Created** 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 3. Response to Discover Request By Invoker: 1. **200 OK** response. diff --git a/doc/testing/testplan/api_events_service/README.md b/doc/testing/testplan/api_events_service/README.md index 891a7e91fb000ddc3c6f02e138242db84e8b996c..c70903e5cbe19ec58a417bc74a90c668129d3e1a 100644 --- a/doc/testing/testplan/api_events_service/README.md +++ b/doc/testing/testplan/api_events_service/README.md @@ -189,7 +189,7 @@ At this documentation you will have all information and related files and exampl 2. Response to Event Subscription must accomplish: 1. 201 Created - 2. The URI of the created resource shall be returned in the "Location" HTTP header, following this structure: *{apiRoot}/capif-events/{apiVersion}/{subscriberId}/subscriptions/{subscriptionId} + 2. The URI of the created resource shall be returned in the "Location" HTTP header, following this structure: **{apiRoot}/capif-events/{apiVersion}/{subscriberId}/subscriptions/{subscriptionId}** 3. Response Body must follow **EventSubscription** data structure. 3. Event Subscriptions are stored in CAPIF Database @@ -226,12 +226,12 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Event Subscription: - 1. Send **POST** to https://{CAPIF_HOSTNAME}/capif-events/v1/{subscriberId}/subscriptions + 1. Send **POST** to **https://{CAPIF_HOSTNAME}/capif-events/v1/{subscriberId}/subscriptions** 2. body [event subscription request body] 3. Use **Invoker Certificate** 3. Remove Event Subcription with not valid subscriber: - 1. Send **DELETE** to to https://{CAPIF_HOSTNAME}/capif-events/v1/{subcriberId}/subscriptions/{SUBSCRIPTION_ID_NOT_VALID} + 1. Send **DELETE** to to **https://{CAPIF_HOSTNAME}/capif-events/v1/{subcriberId}/subscriptions/{SUBSCRIPTION_ID_NOT_VALID}** 2. Use **Invoker Certificate** **Expected Result**: @@ -263,7 +263,7 @@ At this documentation you will have all information and related files and exampl **Description**: - This test case will check that a CAPIF Invoker subscribed to SERVICE_API_INVOCATION_SUCCESS and SERVICE_API_INVOCATION_FAILURE, receive the notification when AEF send to logging service result of invocations to their APIs. + This test case will check that a CAPIF Invoker subscribed to SERVICE_API_INVOCATION_SUCCESS and SERVICE_API_INVOCATION_FAILURE, receive the notification when AEF Send **TO** logging service result of invocations to their APIs. **Pre-Conditions**: @@ -290,7 +290,7 @@ At this documentation you will have all information and related files and exampl * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** * body [service api description] with apiName **service_1** * Store **serviceApiId** - * Use APF Certificate + * Use **APF Certificate** 3. Perform [invoker onboarding] 4. Discover published APIs: @@ -312,7 +312,7 @@ At this documentation you will have all information and related files and exampl 3. apiId of published API 4. apiName of published API 5. 200 and 400 results in two logs. - 3. Use AEF Certificate + 3. Use **AEF Certificate** **Expected Result**: @@ -399,8 +399,8 @@ At this documentation you will have all information and related files and exampl 2. Mock Server received messages must accomplish: 1. **Two Events have been received**. 2. Validate received events follow **EventNotification** data structure, with **apiIds** in **eventDetail** parameter. - 1. One should be **SERVICE_API_AVAILABLE** apiId of service_2 published API. - 2. The other one must be **SERVICE_API_UNAVAILABLE** apiId of service_1 published API. + 1. One should be **SERVICE_API_AVAILABLE** apiId of **service_2** published API. + 2. The other one must be **SERVICE_API_UNAVAILABLE** apiId of **service_1** published API. --- ## Test Case 8: Invoker subscribe to Service API Update @@ -453,7 +453,7 @@ At this documentation you will have all information and related files and exampl 7. Update published API at CCF: * Send **PUT** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}** - * body [service api description] with overrided **apiName** to **service_1_modified** + * body [service api description] with overrided **apiName** to **service_1**_modified** * Use **APF Certificate** **Expected Result**: @@ -465,7 +465,7 @@ At this documentation you will have all information and related files and exampl 2. Response to Update Published Service API: 1. **200 OK** 2. Response Body must follow **ServiceAPIDescription** data structure with: - * apiName **service_1_modified** + * apiName **service_1**_modified** 3. Mock Server received messages must accomplish: 1. **One Event has been received**. 2. Validate received events follow **EventNotification** data structure, with **serviceAPIDescriptions** in **eventDetail** parameter. @@ -578,7 +578,7 @@ At this documentation you will have all information and related files and exampl 6. Create Security Context for Invoker * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Use Invoker Certificate + * Use **Invoker Certificate** 7. Provider Retrieve ACL * Send **GET** **https://{CAPIF_HOSTNAME}/access-control-policy/v1/accessControlPolicyList/${serviceApiId}?aef-id=${aef_id}** * Use **serviceApiId** and **aefId** @@ -648,14 +648,14 @@ At this documentation you will have all information and related files and exampl 6. Create Security Context for Invoker * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Use Invoker Certificate + * Use **Invoker Certificate** 7. Provider Retrieve ACL * Send **GET** **https://{CAPIF_HOSTNAME}/access-control-policy/v1/accessControlPolicyList/${serviceApiId}?aef-id=${aef_id}** * Use **serviceApiId** and **aefId** * Use **AEF Provider Certificate** 3. Delete Security Context of Invoker by Provider: * Send **DELETE** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** - * Use **AEF certificate** + * Use **AEF Certificate** **Expected Result**: @@ -721,11 +721,11 @@ At this documentation you will have all information and related files and exampl 6. Create Security Context for Invoker * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Use Invoker Certificate + * Use **Invoker Certificate** 7. Revoke Authorization by Provider: * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/delete** * body [security notification body] - * Using AEF Certificate. + * Using **AEF Certificate**. **Expected Result**: diff --git a/doc/testing/testplan/api_invoker_management/README.md b/doc/testing/testplan/api_invoker_management/README.md index 02f04a9f3d3acdbac08ad97546d12dd843d1e97b..7a99b7df5c4512d3873321b03aa4a9a13e6a51a7 100644 --- a/doc/testing/testplan/api_invoker_management/README.md +++ b/doc/testing/testplan/api_invoker_management/README.md @@ -26,10 +26,10 @@ At this documentation you will have all information and related files and exampl * Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example] 3. Onboard Invoker: - * Send POST to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers* + * Send **POST** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers** * Reference Request Body: [invoker onboarding body] * "onboardingInformation"->"apiInvokerPublicKey": must contain public key generated by Invoker. - * Send at Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) + * Send in Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) **Execution Steps**: @@ -44,7 +44,7 @@ At this documentation you will have all information and related files and exampl 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** ## Test Case 2: Onboard NetApp Already onboarded @@ -65,10 +65,10 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Repeat Onboard Invoker: - * Send POST to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers* + * Send **POST** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers** * Reference Request Body: [invoker onboarding body] * "onboardingInformation"->"apiInvokerPublicKey": must contain public key generated by Invoker. - * Send at Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) + * Send in Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) **Execution Steps**: @@ -84,7 +84,7 @@ At this documentation you will have all information and related files and exampl 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 2. Response to Second Onboard of NetApp must accomplish: 1. **403 Forbidden** 2. Error Response Body must accomplish with **ProblemDetails** data structure with: @@ -112,7 +112,7 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Update information of previously onboarded Invoker: - * Send PUT to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}* + * Send **PUT** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}** * Reference Request Body is: [put invoker onboarding body] * "notificationDestination": "*http://host.docker.internal:8086/netapp_new_callback*", @@ -130,7 +130,7 @@ At this documentation you will have all information and related files and exampl 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 2. Response to Update Request (PUT) with minor change must contain: 1. **200 OK** response. 2. notificationDestination on response must contain the new value @@ -154,7 +154,7 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Update information of not onboarded Invoker: - * Send PUT to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{INVOKER_NOT_REGISTERED}* + * Send **PUT** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{INVOKER_NOT_REGISTERED}** * Reference Request Body is: [put invoker onboarding body] **Execution Steps**: @@ -195,7 +195,7 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Offboard: - * Send Delete to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}* + * Send **DELETE** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}** **Execution Steps**: @@ -229,7 +229,7 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Offboard: - * Send Delete to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{INVOKER_NOT_REGISTERED}* + * Send **DELETE** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{INVOKER_NOT_REGISTERED}** **Execution Steps**: @@ -266,16 +266,16 @@ At this documentation you will have all information and related files and exampl 2. Create {public_key_2} 3. Update information of previously onboarded Invoker: - * Send PUT to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}* + * Send **PUT** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}** * Reference Request Body is: [put invoker onboarding body] * ["onboardingInformation"]["apiInvokerPublicKey"]: {public_key_2}, * Store new certificate. 4. Update information of previously onboarded Invoker Using new certificate: - * Send PUT to *https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}* + * Send **PUT** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers/{onboardingId}** * Reference Request Body is: [put invoker onboarding body] * "notificationDestination": "*http://host.docker.internal:8086/netapp_new_callback*", - * Use new invoker certificate + * Use new **Invoker Certificate** **Execution Steps**: @@ -292,7 +292,7 @@ At this documentation you will have all information and related files and exampl 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** 2. Response to Update Request (PUT) with new public key: 1. **200 OK** response. 2. apiInvokerCertificate with new certificate on response -> store to use. diff --git a/doc/testing/testplan/api_logging_service/README.md b/doc/testing/testplan/api_logging_service/README.md index 5d61b8e3baa72561be5132fb9ecde26c42c9b294..b5b7eb3d8808313492b05dfc2c3ed98d240c09eb 100644 --- a/doc/testing/testplan/api_logging_service/README.md +++ b/doc/testing/testplan/api_logging_service/README.md @@ -20,14 +20,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [provider onboarding] and [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Log Entry: - 1. Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + 1. Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** 2. body [log entry request body] - 3. Use AEF Certificate + 3. Use **AEF Certificate** **Execution Steps**: 1. Register Provider and Invoker CCF @@ -42,7 +42,7 @@ At this documentation you will have all information and related files and exampl * aefId * apiInvokerId * logs - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invocation-logs/v1/{aefId}/logs/{logId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invocation-logs/v1/{aefId}/logs/{logId}** @@ -66,14 +66,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [provider onboarding] and [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Log Entry: - 1. Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{not-valid-aefId}/logs* + 1. Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{not-valid-aefId}/logs** 2. body [log entry request body] - 3. Use AEF Certificate + 3. Use **AEF Certificate** **Execution Steps**: 1. Register Provider and Invoker CCF @@ -107,14 +107,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [provider onboarding] and [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Log Entry: - 1. Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + 1. Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** 2. body [log entry request body with serviceAPI apiName apiId not valid] - 3. Use AEF Certificate + 3. Use **AEF Certificate** **Execution Steps**: 1. Register Provider and Invoker CCF @@ -150,14 +150,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [provider onboarding] and [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Log Entry: - 1. Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + 1. Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** 2. body [log entry request body with invokerId not valid] - 3. Use AEF Certificate + 3. Use **AEF Certificate** **Execution Steps**: 1. Register Provider and Invoker CCF @@ -172,7 +172,7 @@ At this documentation you will have all information and related files and exampl 3. For each **apiProvFuncs**, we must check: 1. **apiProvFuncId** is set 2. **apiProvCert** under **regInfo** is set properly - 5. Location Header must contain the new resource URL *{apiRoot}/api-provider-management/v1/registrations/{registrationId}* + 5. Location Header must contain the new resource URL **{apiRoot}/api-provider-management/v1/registrations/{registrationId}** 2. Response to Logging Service must accomplish: 1. **404 Not Found** @@ -204,14 +204,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [provider onboarding] and [invoker onboarding] 2. Publish Service API at CCF: - - Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - - body [service api description] with apiName service_1 - - Use APF Certificate + - Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + - body [service api description] with apiName **service_1** + - Use **APF Certificate** 3. Log Entry: - 1. Send POST to *https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs* + 1. Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs** 2. body [log entry request body with bad aefId] - 3. Use AEF Certificate + 3. Use **AEF Certificate** **Execution Steps**: 1. Register Provider and Invoker CCF diff --git a/doc/testing/testplan/api_provider_management/README.md b/doc/testing/testplan/api_provider_management/README.md index fe72d20ead83260ba471643fb19945c6988b56a6..1fab651b57e69e32a832d8a40af504978cd99ef3 100644 --- a/doc/testing/testplan/api_provider_management/README.md +++ b/doc/testing/testplan/api_provider_management/README.md @@ -25,7 +25,7 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. @@ -43,7 +43,7 @@ At this documentation you will have all information and related files and exampl 3. For each **apiProvFuncs**, we must check: 1. **apiProvFuncId** is set 2. **apiProvCert** under **regInfo** is set properly - 5. Location Header must contain the new resource URL *{apiRoot}/api-provider-management/v1/registrations/{registrationId}* + 5. Location Header must contain the new resource URL **{apiRoot}/api-provider-management/v1/registrations/{registrationId}** ## Test Case 2: Register Api Provider Already registered @@ -69,7 +69,7 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. @@ -118,14 +118,14 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Get Resource URL from Location 4. Update Provider: - * Send PUT to Resource URL returned at registration *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}* + * Send **PUT** to Resource URL returned at registration **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}** * body [provider request body] with apiProvDomInfo set to ROBOT_TESTING_MOD * Use AMF Certificate. @@ -141,7 +141,7 @@ At this documentation you will have all information and related files and exampl 1. Register Provider: 1. **201 Created** response. 2. body returned must accomplish **APIProviderEnrolmentDetails** data structure. - 3. Location Header must contain the new resource URL *{apiRoot}/api-provider-management/v1/registrations/{registrationId}* + 3. Location Header must contain the new resource URL **{apiRoot}/api-provider-management/v1/registrations/{registrationId}** 2. Update Provider: @@ -174,14 +174,14 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. 4. Update Not Registered Provider: - * Send PUT *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_PROVIDER_NOT_REGISTERED}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_PROVIDER_NOT_REGISTERED}** * body [provider request body] * Use AMF Certificate. @@ -198,7 +198,7 @@ At this documentation you will have all information and related files and exampl * status 404 * title with message "Not Found" * detail with message "Not Exist Provider Enrolment Details". - * cause with message "Not found registrations to send this api provider details". + * cause with message "Not found registrations to Send **THIS** api provider details". ## Test Case 5: Partially Update Registered Api Provider @@ -224,14 +224,14 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. 4. Partial update provider: - * Send PATCH *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}* + * Send **PATCH** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}** * body [provider request patch body] * Use AMF Certificate. @@ -272,14 +272,14 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. 4. Partial update Provider: - * Send PATCH *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_API_PROVIDER_NOT_REGISTERED}* + * Send **PATCH** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_API_PROVIDER_NOT_REGISTERED}** * body [provider request patch body] * Use AMF Certificate. @@ -299,7 +299,7 @@ At this documentation you will have all information and related files and exampl * status 404 * title with message "Not Found" * detail with message "Not Exist Provider Enrolment Details". - * cause with message "Not found registrations to send this api provider details". + * cause with message "Not found registrations to Send **THIS** api provider details". ## Test Case 7: Delete Registered Api Provider @@ -325,14 +325,14 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. 4. Delete registered provider: - * Send DELETE *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}* + * Send **DELETE** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}** * Use AMF Certificate. **Execution Steps**: @@ -370,14 +370,14 @@ At this documentation you will have all information and related files and exampl 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] * Authentication Bearer with access_token * Store each cert in a file with according name. 4. Delete registered provider at Provider Management: - * Send DELETE *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_PROVIDER_NOT_REGISTERED}* + * Send **DELETE** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_PROVIDER_NOT_REGISTERED}** * Use AMF Certificate. **Execution Steps**: @@ -393,7 +393,7 @@ At this documentation you will have all information and related files and exampl * status 404 * title with message "Not Found" * detail with message "Not Exist Provider Enrolment Details". - * cause with message "Not found registrations to send this api provider details". + * cause with message "Not found registrations to Send **THIS** api provider details". [provider request body]: ./provider_details_post_example.json "API Provider Enrolment Request" diff --git a/doc/testing/testplan/api_publish_service/README.md b/doc/testing/testplan/api_publish_service/README.md index 21512db6fbd04c0170c0cf940bba92486000aa33..27bd8e86c669775335ef0e0e51d574e4494a0b02 100644 --- a/doc/testing/testplan/api_publish_service/README.md +++ b/doc/testing/testplan/api_publish_service/README.md @@ -19,9 +19,9 @@ At this documentation you will have all information and related files and exampl 2. Publish Service API at CCF: - * Send Post to **ccf_publish_url**: *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* + * Send **POST** to **ccf_publish_url**: **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** * body [service api description] with apiName **service_1** - * Use APF Certificate + * Use **APF Certificate** **Execution Steps**: @@ -37,7 +37,7 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 1. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 1. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 3. Published Service API is stored in CAPIF Database @@ -58,9 +58,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Publish Service API with invalid APF ID at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{APF_ID_NOT_VALID}/service-apis* - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{APF_ID_NOT_VALID}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** **Execution Steps**: @@ -98,27 +98,27 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Publish Service API at CCF: - * Send Post to *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Publish Other Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_2 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_2** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 4. Retrieve all published APIs: - * Send Get to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * Use APF Certificate + * Send **GET** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * Use **APF Certificate** **Execution Steps**: 1. Register Provider at CCF and store certificates. - 2. Publish Service API service_1 + 2. Publish Service API **service_1** 3. Retrieve {apiId1} from body and Location header with new resource created from response - 4. Publish Service API service_2 + 4. Publish Service API **service_2** 5. Retrieve {apiId2} from body and Location header with new resource created from response 6. Retrieve All published APIs and check if both are present. @@ -128,13 +128,13 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId1}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId1}** 2. Response to service 2 Publish request must accomplish: 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId2}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId2}** 3. Published Service APIs are stored in CAPIF Database @@ -160,8 +160,8 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Retrieve all published APIs: - * Send Get to *https://{CAPIF_HOSTNAME}/published-apis/v1/{APF_ID_NOT_VALID}/service-apis* - * Use APF Certificate + * Send **GET** to **https://{CAPIF_HOSTNAME}/published-apis/v1/{APF_ID_NOT_VALID}/service-apis** + * Use **APF Certificate** **Execution Steps**: @@ -198,34 +198,34 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Publish Other Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_2 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_2** * Get apiId - * Use APF Certificate + * Use **APF Certificate** - 4. Retrieve service_1 published APIs detail: - * Send Get to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{apiId1}* - * Use APF Certificate + 4. Retrieve **service_1** published APIs detail: + * Send **GET** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{apiId1}** + * Use **APF Certificate** - 5. Retrieve service_2 published APIs detail: - * Send Get to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{apiId2}* - * Use APF Certificate + 5. Retrieve **service_2** published APIs detail: + * Send **GET** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{apiId2}** + * Use **APF Certificate** **Execution Steps**: 1. Register Provider at CCF and store certificates. - 2. Publish Service API service_1. + 2. Publish Service API **service_1**. 3. Retrieve {apiId1} from body and Location header with new resource created from response. - 4. Publish Service API service_2. + 4. Publish Service API **service_2**. 5. Retrieve {apiId2} from body and Location header with new resource created from response. - 6. Retrieve service_1 API Detail. - 7. Retrieve service_2 API Detail. + 6. Retrieve **service_1** API Detail. + 7. Retrieve **service_2** API Detail. **Expected Result**: @@ -233,25 +233,25 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId1}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId1}** 2. Response to service 2 Publish request must accomplish: 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId2}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId2}** 3. Published Service APIs are stored in CAPIF Database - 4. Response to Retrieve service_1 published API using apiId1: + 4. Response to Retrieve **service_1** published API using apiId1: 1. **200 OK** 2. Response body must return a **ServiceAPIDescription** data. - 3. Array must contain same information than service_1 published registration response. + 3. Array must contain same information than **service_1** published registration response. - 5. Response to Retrieve service_2 published API using apiId2: + 5. Response to Retrieve **service_2** published API using apiId2: 1. **200 OK** 2. Response body must return a **ServiceAPIDescription** data. - 3. Array must contain same information than service_2 published registration response. + 3. Array must contain same information than **service_2** published registration response. ## Test Case 6: Retrieve single APIs non Published by Authorised apfId @@ -271,8 +271,8 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Retrieve not published APIs detail: - * Send Get to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}* - * Use APF Certificate + * Send **GET** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}** + * Use **APF Certificate** **Execution Steps**: @@ -307,14 +307,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Retrieve detailed published APIs: - * Send Get to *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/${apiId}* - * Use Invoker certificate + * Send **GET** to **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/${apiId}** + * Use **Invoker Certificate** **Execution Steps**: @@ -322,7 +322,7 @@ At this documentation you will have all information and related files and exampl 2. Publish Service API at CCF 3. Retrieve {apiId} from body and Location header with new resource created from response. 4. Register and onboard Invoker at CCF - 5. Store signed Invoker Certificate + 5. Store signed **Invoker Certificate** 6. Retrieve detailed published API acting as Invoker **Expected Result**: @@ -356,21 +356,21 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId * get resource url from location Header. - * Use APF Certificate + * Use **APF Certificate** 3. Update published API at CCF: - * Send PUT to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}* - * body [service api description] with overrided apiName to service_1_modified - * Use APF Certificate + * Send **PUT** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}** + * body [service api description] with overrided apiName to **service_1**_modified + * Use **APF Certificate** 4. Retrieve detail of service API: - * Send Get to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}* - * check apiName is service_1_modified - * Use APF Certificate + * Send **GET** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}** + * check apiName is **service_1**_modified + * Use **APF Certificate** **Execution Steps**: @@ -386,17 +386,17 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Update Published Service API: 1. **200 OK** 2. Response Body must follow **ServiceAPIDescription** data structure with: - * apiName service_1_modified + * apiName **service_1**_modified 3. Response to Retrieve detail of Service API: 1. **200 OK** 2. Response Body must follow **ServiceAPIDescription** data structure with: - * apiName service_1_modified. + * apiName **service_1**_modified. ## Test Case 9: Update APIs Published by Authorised apfId with invalid serviceApiId @@ -416,15 +416,15 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Update published API at CCF: - * Send PUT to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}* - * body [service api description] with overrided apiName to ***service_1_modified*** - * Use APF Certificate + * Send **PUT** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}** + * body [service api description] with overrided apiName to ***service_1**_modified*** + * Use **APF Certificate** **Execution Steps**: @@ -437,7 +437,7 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Response to Update Published Service API: 1. **404 Not Found** @@ -464,20 +464,20 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Update published API at CCF: - * Send PUT to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* - * body [service api description] with overrided apiName to ***service_1_modified*** - * Use invoker certificate + * Send **PUT** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** + * body [service api description] with overrided apiName to ***service_1**_modified*** + * Use **Invoker Certificate** 4. Retrieve detail of service API: - * Send Get to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}* - * check apiName is service_1 - * Use APF Certificate + * Send **GET** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}** + * check apiName is **service_1** + * Use **APF Certificate** **Execution Steps**: @@ -485,7 +485,7 @@ At this documentation you will have all information and related files and exampl 2. Publish Service API at CCF 3. Retrieve {apiId} from body and Location header with new resource created from response. 4. Register and onboard Invoker at CCF - 5. Store signed Invoker Certificate + 5. Store signed **Invoker Certificate** 6. Update published API at CCF as Invoker 7. Retrieve detail of Service API as publisher @@ -502,7 +502,7 @@ At this documentation you will have all information and related files and exampl 2. Response to Retrieve Detail of Service API: 1. **200 OK** 2. Response Body must follow **ServiceAPIDescription** data structure with: - * apiName service_1. + * apiName **service_1**. ## Test Case 11: Delete API Published by Authorised apfId with valid serviceApiId @@ -523,17 +523,17 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Remove published Service API at CCF: - * Send DELETE to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* - * Use APF Certificate + * Send **DELETE** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** + * Use **APF Certificate** 4. Retrieve detail of service API: - * Send Get to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}* - * Use APF Certificate + * Send **GET** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{serivceApiId}** + * Use **APF Certificate** **Execution Steps**: @@ -549,7 +549,7 @@ At this documentation you will have all information and related files and exampl 1. **201 Created** 2. Response Body must follow **ServiceAPIDescription** data structure with: * apiId - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}** 2. Published Service API is stored in CAPIF Database @@ -582,8 +582,8 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Remove published Service API at CCF with invalid serviceId: - * Send DELETE to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}* - * Use APF Certificate + * Send **DELETE** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}** + * Use **APF Certificate** **Execution Steps**: @@ -618,14 +618,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis* - * body [service api description] with apiName service_1 + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** * Get apiId - * Use APF Certificate + * Use **APF Certificate** 3. Remove published Service API at CCF with invalid serviceId as Invoker: - * Send DELETE to resource URL *https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}* - * Use invoker certificate. + * Send **DELETE** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID_NOT_VALID}** + * Use **Invoker Certificate**. **Execution Steps**: diff --git a/doc/testing/testplan/api_security_service/README.md b/doc/testing/testplan/api_security_service/README.md index e051f90fc1e32645e24cf099fd6108f6520200f5..1f57c2de63aa37277f0389788b8a8207f4c6af86 100644 --- a/doc/testing/testplan/api_security_service/README.md +++ b/doc/testing/testplan/api_security_service/README.md @@ -17,9 +17,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Use Invoker Certificate + * Use **Invoker Certificate** **Execution Steps**: @@ -32,7 +32,7 @@ At this documentation you will have all information and related files and exampl 1. Create security context: 1. **201 Created** response. 2. body returned must accomplish **ServiceSecurity** data structure. - 3. Location Header must contain the new resource URL *{apiRoot}/capif-security/v1/trustedInvokers/{apiInvokerId}* + 3. Location Header must contain the new resource URL **{apiRoot}/capif-security/v1/trustedInvokers/{apiInvokerId}** ## Test Case 2: Create a security context for an API invoker with Provider role @@ -52,9 +52,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker but using Provider certificate. - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using AEF certificate + * Using **AEF Certificate** **Execution Steps**: @@ -91,9 +91,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Create Security Context for this not valid apiInvokerId and using Provider certificate. - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}** * body [service security body] - * Using AEF certificate + * Using **AEF Certificate** **Execution Steps**: @@ -128,9 +128,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Create Security Context for this Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}** * body [service security body] - * Use Invoker Certificate + * Use **Invoker Certificate** **Execution Steps**: @@ -167,13 +167,13 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker. - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker certificate + * Using **Invoker Certificate** 3. Retrieve Security Context of Invoker by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Using AEF Certificate + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Using **AEF Certificate** **Execution Steps**: @@ -206,8 +206,8 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Retrieve Security Context of invalid Invoker by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}* - * Using AEF Certificate. + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}** + * Using **AEF Certificate**. **Execution Steps**: @@ -243,13 +243,13 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate + * Using **Invoker Certificate** 3. Retrieve Security Context as Invoker role: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Using Invoker Certificate + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Using **Invoker Certificate** **Execution Steps**: @@ -286,17 +286,17 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker but using Provider certificate. - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using AEF certificate + * Using **AEF Certificate** 3. Delete Security Context of Invoker by Provider: - * Send DELETE *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Use AEF certificate + * Send **DELETE** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Use **AEF Certificate** 4. Retrieve Security Context of Invoker by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Using AEF Certificate + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Using **AEF Certificate** **Execution Steps**: @@ -336,13 +336,13 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker certificate + * Using **Invoker Certificate** 3. Delete Security Context of Invoker: - * Send DELETE *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Use Invoker certificate + * Send **DELETE** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Use **Invoker Certificate** **Execution Steps**: @@ -378,8 +378,8 @@ At this documentation you will have all information and related files and exampl 1. Perform [Invoker Onboarding] 2. Delete Security Context of Invoker: - * Send DELETE *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}* - * Use Invoker certificate + * Send **DELETE** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}** + * Use **Invoker Certificate** **Execution Steps**: @@ -414,8 +414,8 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Delete Security Context of Invoker by Provider: - * Send DELETE *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}* - * Use AEF certificate + * Send **DELETE** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}** + * Use **AEF Certificate** **Execution Steps**: @@ -450,18 +450,18 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. 3. Update Security Context of Invoker: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/update* - * body [service security body] but with notification destination modified to http://robot.testing2 - * Using Invoker Certificate. + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/update** + * body [service security body] but with notification destination modified to **http://robot.testing2** + * Using **Invoker Certificate**. 4. Retrieve Security Context of Invoker by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Using AEF Certificate. + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Using **AEF Certificate**. **Execution Steps**: @@ -501,14 +501,14 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. 3. Update Security Context of Invoker by Provider: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/update* - * body [service security body] but with notification destination modified to http://robot.testing2 - * Using AEF Certificate + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/update** + * body [service security body] but with notification destination modified to **http://robot.testing2** + * Using **AEF Certificate** **Execution Steps**: @@ -546,9 +546,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] 2. Update Security Context of Invoker by Provider: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}/update* + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}/update** * body [service security body] - * Using AEF Certificate + * Using **AEF Certificate** **Execution Steps**: @@ -583,9 +583,9 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Update Security Context of Invoker: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}/update* + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}/update** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. **Execution Steps**: @@ -620,18 +620,18 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context By Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate + * Using **Invoker Certificate** 3. Revoke Authorization by Provider: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/delete* + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/delete** * body [security notification body] - * Using AEF Certificate. + * Using **AEF Certificate**. 4. Retrieve Security Context by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* - * Using AEF Certificate. + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** + * Using **AEF Certificate**. **Execution Steps**: @@ -673,17 +673,17 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. 3. Revoke Authorization by invoker: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/delete* + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}/delete** * body [security notification body] - * Using Invoker Certificate + * Using **Invoker Certificate** 4. Retrieve Security Context of Invoker by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * Using Provider Certificate **Execution Steps**: @@ -727,19 +727,19 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Create Security Context for this Invoker: - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. 3. Revoke Authorization by Provider: - * Send POST *https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}/delete* + * Send **POST** **https://{CAPIF_HOSTNAME}/trustedInvokers/{API_INVOKER_NOT_VALID}/delete** * body [security notification body] - * Using AEF Certificate. + * Using **AEF Certificate**. 4. Retrieve Security Context of Invoker by Provider: - * Send GET *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}?authenticationInfo=true&authorizationInfo=true* + * Send **GET** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}?authenticationInfo=true&authorizationInfo=true** * This request will ask with parameter to retrieve authenticationInfo and authorizationInfo - * Using AEF Certificate. + * Using **AEF Certificate**. **Execution Steps**: @@ -783,32 +783,32 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*: + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**: * body [access token req body] and example [example] * ***securityId*** is apiInvokerId. * ***grant_type=client_credentials***. * Create Scope properly for request: ***3gpp#{aef_id}:{api_name}*** - * Using Invoker Certificate. + * Using **Invoker Certificate**. **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -839,31 +839,31 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by provider: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*: + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**: * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** - * Using AEF certificate + * Using **AEF Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -894,31 +894,31 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by provider: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{API_INVOKER_NOT_VALID}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{API_INVOKER_NOT_VALID}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** - * Using AEF certificate + * Using **AEF Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -949,28 +949,28 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{API_INVOKER_NOT_VALID}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{API_INVOKER_NOT_VALID}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** - * Using Invoker certificate + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -1006,32 +1006,32 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** * **client_id is not-valid** - * Using Invoker certificate + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -1063,31 +1063,31 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=not_valid*** - * Using Invoker certificate + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -1118,32 +1118,32 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** * ***scope=not-valid-scope*** - * Using Invoker certificate + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -1175,32 +1175,32 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** - * ***scope=3gpp#1234:service_1*** - * Using Invoker certificate + * ***scope=3gpp#1234:**service_1*** + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. @@ -1232,32 +1232,32 @@ At this documentation you will have all information and related files and exampl 1. Perform [Provider Registration] and [Invoker Onboarding] 2. Publish Service API at CCF: - * Send Post to ccf_publish_url https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis - * body [service api description] with apiName service_1 - * Use APF Certificate + * Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis** + * body [service api description] with apiName **service_1** + * Use **APF Certificate** 3. Request Discover Published APIs not filtered: - * Send GET to ccf_discover_url *https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}* + * Send **GET** to ccf_discover_url **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}** * Param api-invoker-id is mandatory - * Using invoker certificate + * Using **Invoker Certificate** 4. Create Security Context for this Invoker - * Send PUT *https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}* + * Send **PUT** **https://{CAPIF_HOSTNAME}/trustedInvokers/{apiInvokerId}** * body [service security body] - * Using Invoker Certificate. + * Using **Invoker Certificate**. * Create Security Information Body with one **securityInfo** for each aef present at each serviceAPIDescription present at Discover. 5. Request Access Token by invoker: - * Sent POST *https://{CAPIF_HOSTNAME}/securities/{securityId}/token*. + * Sent POST **https://{CAPIF_HOSTNAME}/securities/{securityId}/token**. * body [access token req body] * ***securityId*** is apiInvokerId * ***grant_type=client_credentials*** * ***scope=3gpp#{aef_id}:not-valid*** - * Using Invoker certificate + * Using **Invoker Certificate** **Execution Steps**: - 1. Register Provider at CCF, store certificates and Publish Service API service_1 at CCF + 1. Register Provider at CCF, store certificates and Publish Service API **service_1** at CCF 2. Register and onboard Invoker at CCF 3. Discover Service APIs by Invoker. 4. Create Security Context According to Service APIs discovered. diff --git a/doc/testing/testplan/common_operations/README.md b/doc/testing/testplan/common_operations/README.md index 0f8cf9f2cc7271ddefa318648beada778bd8f0af..a77e947f292ec20074b8fb22d5fa53371f7b18d9 100644 --- a/doc/testing/testplan/common_operations/README.md +++ b/doc/testing/testplan/common_operations/README.md @@ -51,7 +51,7 @@ The steps to register a new user at Register Service are: * Send **POST** to **https://{CAPIF_HOSTNAME}/api-invoker-management/v1/onboardedInvokers** * Reference Request Body: [invoker onboarding body] * "onboardingInformation"->"apiInvokerPublicKey": must contain public key generated by Invoker. - * Send at Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) + * Send in Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) ### Checks to ensure onboarding @@ -64,7 +64,7 @@ The steps to register a new user at Register Service are: 2. Response Body must follow **APIInvokerEnrolmentDetails** data structure with: * apiInvokerId * onboardingInformation->apiInvokerCertificate must contain the public key signed. - 3. Response Header **Location** must be received with URI to new resource created, following this structure: *{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}* + 3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/api-invoker-management/{apiVersion}/onboardedInvokers/{onboardingId}** ### Example Flow  @@ -81,9 +81,9 @@ The steps to register a new user at Register Service are: 3. Register Provider: - * Send POST *https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations* + * Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations** * body [provider request body] - * Send at Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) + * Send in Authorization Header the Bearer access_token obtained previously (Authorization:Bearer ${access_token}) * Store each cert in a file with according name. ### Checks to ensure provider registration @@ -100,7 +100,7 @@ The steps to register a new user at Register Service are: 3. For each **apiProvFuncs**, we must check: 1. **apiProvFuncId** is set 2. **apiProvCert** under **regInfo** is set properly - 4. Location Header must contain the new resource URL *{apiRoot}/api-provider-management/v1/registrations/{registrationId}* + 4. Location Header must contain the new resource URL **{apiRoot}/api-provider-management/v1/registrations/{registrationId}** ### Example Flow 