A project type defines how campaigns are created, delivered, and monitored. Enabling a new campaign type involves configuring products, templates, attributes, targets, checklists, localisation, and default screen behaviour.
⚠️ Note: A generic campaign type (codelivery) already supports most use cases. Create a new campaign type only if explicitly required.
Use the productId returned from the product creation API.
Tag the variant with the project type code.
Step 2: Configure the Project Type Template
Create a New Project Type
Example project type code: NTD
Ensure the id in the data object is unique.
Set Core Properties
group: Example – MALARIA
type: Example – multiround
beneficiaryType: Choose one:
INDIVIDUAL
HOUSEHOLD
Configure Cycles and Deliveries
You may prefill them or leave them empty.
Example: one cycle with one delivery.
Cycles & Delivery Templates
PreSuggested Cycles
In the NTD Campaign, there’s one cycle, one delivery, but different products for different groups.
Empty Cyles Example
Attach Product Resources
Reference the product variant created in Step 1:
The final constructed project type will be:
Project Type Config
Step 3: Configure Delivery Attributes
Delivery attributes control what data can be captured during delivery.
Search Existing Attributes
MDMS schema:
Search for the attributes in MDMS. The collection has the curl named "Search allAttributes data".
Link Attributes to the New Project Type - Add {{projectTypeCode}} to the projectTypes list.
Sample update data is given below:
Ensure attributes are set correctly, as they will be used for delivery rule creation.
Step 4: Configure target template
Add Target Template Definitions
Schema: adminSchema
Create two entries with unique identifiers:
boundary.{{projectTypeCode}}
boundaryWithTarget.{{projectTypeCode}}
Purpose
Defines the target sheet structure used to enter village-level targets.
Add Localisation
Add localisation keys for the newly created project type.
This master is for the target sheet template used to enter target values for each village. Make sure to configure it accordingly.
HCM-ADMIN-CONSOLE.schemas
Step 5: Configure target mapping for the dashboard
Map dashboard targets to beneficiary types and columns.
This configuration maps dashboard targets to columns, ensuring all listed columns align with beneficiaries. The supported beneficiary types include Individual & Household.
Step 6: Configure checklist templates
Add default checklist templates for the new campaign type.
Restart the following services to ensure all templates and localisations load correctly:
localisation
project-factory
We are not suggesting the creation of a new campaign type at this time. We already have a campaign type called 'codelivery', which covers all the different use cases. However, if a new campaign type is required and recommended by WHO when project types are created, you can proceed with its creation. A project type is essentially a known template used for creating and delivering campaigns.