WLM Integration Steps
Create the required Azure AD security groups - Example: TC-SmallVesselRegistrar-[DEV/TEST/ACC/PROD]
Add your application users to the security groups
Register your application with the Microsoft Identity Platform [Create an app registration], and add the API permissions your application requires from WLM:
WorkItem.CreateUpdate.All - Allow the application to have create/update access to all work item data.
WorkItem.Read.All - Allow the application to have read-only access to all work item data.
Grant admin consent for your application’s API permissions (This can only be done by the cloud admin team)
Register your line of business in the List of value service, contact the MOLE team. [NCD/NCA/NCT/PCP]
Contacts: Walter Hoban , Xia W , yiliu
List of value type: LineOfBusiness
You can use the following query to get information on the structure of the JSON Object:
SELECT * FROM c WHERE c.ListOfValueType like '%LineOfBusiness%'
To add a new line of buisiness, you can use the API -dev of LOV. Make sure you enter the correct id (you can validate in the database, which ID is not used) The id and the name become the key for future updates. Your line of buisiness id will be used with the WLM.
Submit a request to Team Kraken [TC.F NCR MAACE Team Kraken / Équipe Kraken CEMAA RCN F.TC NCRMAACETeamKraken-EquipeKrakenCEMAARCN@tc.gc.ca] to integrate with WLM
Provide the security group names and what type of operation each group requires (App Role):
Readers
Writers
Provide the application name (App Registration Name)
Which environment you want to integrate your app with [NCD/NCA/NCT/PCP]
CRSM/MTOA and Status codes
In order to comply with the Service Fees Act, your application might need to report the service standards. WLM is integrated with MTOA/CRSM and is configured to automatically send notifications. Your only part here is to verify/register your status codes. Reach out to the MOLE team, Xia W , Walter Hoban , yiliu for more information.
There will be some upcoming changes to Workload Management Service in the near future to unify the status codes. A notification will be sent out, once that is finalized. For more information you can reach out to the MOLE team.
Application Configuration [Authentication/Authorization]
Workload Management Service uses the Microsoft Identity Platform to secure it’s endpoints. If you followed the previous steps sequentially you should have your application registered with the MIP and the only remaining step is to configure your application to pass the JWT Bearer token as part of any communication with any of the WLM endpoints.
Workload Management Service Access
For the current available endpoints you can consult the OpenAPI Specification in the following table:
Environments | Endpoint | OpenAPI Specification |
NCD / Development |
| Swagger UI (ncdsafsecsurapp-work-management-service.azurewebsites.net) |
NCT / Test |
| Swagger UI (nctsafsecsurapp-work-management-service.azurewebsites.net) |
NCA / Acceptance |
| Swagger UI (ncasafsecsurapp-work-management-service.azurewebsites.net) |
PCP / Production |
| Swagger UI (pcpsafsecsurapp-work-management-service.azurewebsites.net) |
Apart from the contents of the predefined models, Workload Management Service does not enforce what you store for your specific line of business service. It segregates your data based on the Line of business id that you defined in the list of value service in the initial setup steps.
When making your initial call to WLM, you need to make sure you are passing the following:
Line of business id
Work Item Status Model (Refer to step 5 for the values) - Required for CRSM integration.
The values for the work item status codes should be verified with the MOLE team, WLM will enforce this in the future. Refer to step 5 for how to create/integrate your WLM status codes.
Even though the following fields are not enforced, it is worth mentioning that this is where you line of business specific data will reside. Both of the fields are JSONB columns, that can contain complex objects.
initialDetail - In WLM this will be your initial snapshot of the work item. It will not be updated after the initial creation. i.e. PUT method call.
detail - Initially this will be identical to initialDetail, but will contain any subsequent updates to your LOB data.