[ExtAPI] Honolulu Architecture Review

1- Brief Project Overview (brief as it should be known)

NBI stands for NorthBound Interface. It brings to ONAP a set of APIs that can be used by external systems such BSS for example. These APIs are based on TMForum and MEF APIs

2- New component capabilities for Honolulu-R8, i.e. the functional enhancements, if applicable

There are no planned Enhancement features for Honolulu, minor bug fix only.

3- New or modified interfaces

None

4- If they are modified, are they backwards compatible?

Not applicable, no modifications

6- Interface naming (point to an example)

https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/architecture/architecture.html

7- Consumed API from other projects

https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/consumedapis/consumedapis.html


8- Published API

https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/offeredapis/offeredapis.html


9- Reference to the interfaces.

External API provides the following interfaces:

Interface Name

Interface Definition

 Interface Capabilities

API Spec (Swagger)

ExternalAPIE-1 NBI Management Interface

Provides a healthcheck to verify that the NBI component is running fine


Provides:
  • Healthcheck of a NBI service
https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/_downloads/350675a49dbe01d7970309dac13aaa30/swagger.json
ExternalAPIE-2 Subscription Management Interface

Provides the ability to subscribe to and unsubscribe from External API events.

(also known as the External API Hub interface) 

Provides:
  • Create/Delete a Notification
  • List notification
  • Retrieve a notification
  • Listen to notifications
https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/_downloads/7a0359a1069cff9bb3f7db69109b5294/swagger.json
ExternalAPIE-3 Service Catalogue Interface Find service specifications that can be instantiated

 Provides:

  • Search for services in the catalogue (with filters)
  • Retrieve a service specification from the catalogue
https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/_downloads/ca979e4ad0e48c22d6e62f403b4b0c7c/swagger.json
ExternalAPIE-4 Service Ordering Interface Request the instantiation of a service

 Provides

  • Search for service orders
  • Retrieve a service order
  • Request a service instantiation
https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/_downloads/9450323ada78d8f7eeb360141ed68b63/swagger.json
ExternalAPIE-5 Service Inventory Interface Query information about instantiated services Provides
  • Search for instantiated Services
  • Retrieve information about an instantiated order
https://docs.onap.org/projects/onap-externalapi-nbi/en/latest/_downloads/58f285f89bb1416ea0a0ceec1e325800/swagger.json

10- What are the system limits?

No known system limit. APIs by default do not have RBAC enabled

System Requirements documented herehttps://docs.onap.org/projects/onap-externalapi-nbi/en/latest/architecture/NBI_Developer_Guide.html

11- Involved use cases, architectural capabilities or functional requirements.

No new use case support planned for Honolulu release. External API had been used in CCVPN, BBS and 5G E2E Slicing usecases in previous releases.

12- Listing of new or impacted models used by the project (for information only).

  • Models based on information exchanges from Use Cases
    • Forward looking models that may be implemented in future releases
      • Specification work for alignment between TMF 628 Performance Mgmt API enhancements per TMF/MEF for Datalake access with ONAP internal DES APIs.
  • Describe how exposed APIs are mapped to information models

13-Test plan/Testing Strategy

  1. Unit Testing  - Junits built into code base plus 
  2. Dev-to-Dev Testing  - wiremock 
  3. Integration - Health check API includes consumed APIs from other components integration checks 


14- Any other details that are specific to this functional enhancement or UseCase.

      N/A minor clean up changes only