1 @startuml Publish a new API
5 participant providermanager
6 participant publishservice
7 participant eventservice
11 alt#LightBlue #LightBlue Publish Service
12 ProviderClient->capifcore: Publish services\n with providerId\n andServiceAPIDescription
13 capifcore->publishservice: Publish services
14 publishservice->providermanager: Are AEFs registered\n for provider?
15 providermanager->publishservice: Ok
16 publishservice->publishservice: Create apiId
17 alt#Orange #Orange Subcribed Event Handling
18 publishservice->eventservice: Service published
19 eventservice->invoker: CAPIFEventDetail
21 publishservice->capifcore: ServiceAPIDescription\n with apiId
22 capifcore->ProviderClient: ServiceAPIDescription\n with apiId