-alt#coral #coral Register Invoker
- rAppManager->capifcore: Register invoker with\n APIInvokerEnrolmentDetails
- capifcore->invokerservice: Register invoker
- invokerservice->invokerservice: Create apiInvokerId and\n onboardingSecret
- invokerservice->publishservice: Get available services
- publishservice->invokerservice: Available services
- alt#Orange #Orange Subcribed Event Handling
- invokerservice->eventservice: Invoker registered
- eventservice->rApp: CAPIFEventDetail
+alt Regtister provider rApp
+ rAppCatalogue->rAppManager: Register rApp, with\n rApp descriptor\n specifying which\n services to expose
+ alt#paleGreen #paleGreen Provider Enrolment
+ rAppManager->capifcore: Register provider with\n APIProviderEnrolmentDetails
+ capifcore->providermanager:Register provider
+ providermanager->providermanager: Create apiProvDomId\n and apiProvFuncIds\n for provided functions
+ providermanager->capifcore: Provider with\n apfId and aefIds
+ capifcore->rAppManager: Provider with\n apfId and aefIds
+ end
+ alt#LightBlue #LightBlue Publish Service
+ rAppManager->capifcore: Publish services\n with providerId\n andServiceAPIDescription
+ capifcore->publishservice: Publish services
+ publishservice->providermanager: Are AEFs registered\n for provider?
+ providermanager->publishservice: Ok
+ publishservice->publishservice: Create apiId
+ publishservice->helmmanager: Install chart
+ note right: Optional and not decided yet
+ helmmanager->publishservice: Ok
+ alt#Orange #Orange Subcribed Event Handling
+ publishservice->eventservice: Service published
+ eventservice->capp: CAPIFEventDetail
+ end
+ publishservice->capifcore: ServiceAPIDescription\n with apiId
+ capifcore->rAppManager: ServiceAPIDescription\n with apiId