Master Data

Overview

The MDMS (Master Data Management Service) in DIGIT stores reusable, static configuration data like service definitions, role mappings, department codes, etc.

  • MDMS V2 - All data is stored in a central database, which offers:

    • 🔍 Faster search and lookup

    • ⚙️ Dynamic updates (no need to redeploy code for small changes)

    • 🛠️ API-based management (Postman support)

    • 🔄 Easier feature upgrades

Master Data List

Category
Purpose
MDMS Entries

Access Control

User roles and permissions

- ACCESSCONTROL-ACTIONS-TEST.actions-test

- ACCESSCONTROL-ROLEACTIONS.roleactions

- ACCESSCONTROL-ROLES.roles

Tenant Configuration

Manage city and tenant setup

- Tenant.citymodule

- Tenant.tenants

Common Masters

General-purpose reusable master data across modules

- common-masters.CronJobAPIConfig

- common-masters.Department

- common-masters.Designation

- common-masters.GenderType

- common-masters.IdFormat

- common-masters.StateInfo

- common-masters.uiHomePage

- common-masters.wfSlaConfig

Data Security

Encryption, decryption, and masking of data

- DataSecurity.DecryptionABAC

- DataSecurity.EncryptionPolicy

- DataSecurity.MaskingPatterns

- DataSecurity.SecurityPolicy

HRMS (Human Resource Management System)

Defines employee-related master data

- egov-hrms.DeactivationReason

- egov-hrms.Degree

- egov-hrms.EmployeeStatus

- egov-hrms.EmployeeType

- egov-hrms.EmploymentTest

- egov-hrms.Specalization

PGR (Public Grievance Redressal)

Defines complaint types, categories, and UI behavior

- RAINMAKER-PGR.ServiceDefs

- RAINMAKER-PGR.UIConstants

Workflow

Defines behavior of workflows across services

- Workflow.AutoEscalation

- Workflow.AutoEscalationStatesToIgnore

- Workflow.BusinessService

- Workflow.BusinessServiceConfig

- Workflow.BusinessServiceMasterConfig

Inbox

Configuration of the Inbox UI and queries

- INBOX.InboxQueryConfiguration


Pre-requisites

  • Postman installed

  • Access to the MDMS V2 service (port-forwarded or public URL)

  • Valid environment URL and login credentials

  • MDMS Admin authtoken

Steps - Schema Upload

1

Import Postman Collection

  • Copy the above Postman collection.

  • Click on the Import icon in Postman.

  • Paste the URL and import the collection.

  • After import, you’ll find the collection on the left panel of Postman.

2

Add Required Variables in Postman Collection (Before Running MDMS Script)

  • Before proceeding to the next step, make sure the prerequisites baseUrl and authtoken are updated.

  • Make sure your Postman environment has the following values updated:

    • baseUrl (e.g., https://dev.digit.org) (This is the domain URL where your application is running . Need to copy that domain URL here).

    • User Details (Mdsm user) (Which was created during the installation . Need to copy username, password and tenantid of the mdmsAdmin user)

    • tenantId (e.g., pb, uk) (In the request body, need to verify or update the tenantId where going to set up the master data )

  • Before executing the MDMS v2 Schema Creation collection, make sure to add the following variables in the collection's variable section in Postman:

Variable Name
Description

Url

The domain URL where your DIGIT application is hosted. Example: https://pgr-demo.digit.org

📌 Add this in the "Url" variable field.

username

The admin username for MDMS (e.g., mdms admin). Required for authentication.

📌 Add this in the "username" variable field.

password

The admin password for the above username.

📌 Add this in the "password" variable field.

tenant

The state-level tenant ID (e.g., pg).

📌 Add this in the "tenant" variable field.

userTenant

The ULB-level tenant ID where the user has been created (e.g., pg).

📌 Add this in the "userTenant" variable field.

  • Refer to the screenshot below showing Postman → Variables tab with all fields filled.

python3 exec.py --upload-data --data-path ./data --tenant-id pg
3

Final Checklist Before Running

  • Variables are filled correctly as per the environment.

  • Admin user created and credentials are working.

  • The collection is imported and opened in Postman.

  • No missing or invalid values.

4

Run the Postman collection

  • Open Postman and locate the collection named "MDMS v2 Schema Creation".

  • Click the three dots (⋮) next to the collection name (on the right side). Refer to the screenshot for the exact location.

  • From the dropdown menu, select "Run Collection". This will open the Collection Runner window. On the right side of the new screen, you’ll see an orange button labelled "Run MDMS v2 Schema Creation" — click this.

  • The collection will now start running. You will see each API request and its response as they execute.

5

Check Results

  • ✅ If all requests succeed (green checkmarks), your MDMS setup for Inbox V2 is complete.

  • ❌ If any request fails (red cross), re-run the collection to retry the failed steps.

Important Note

Master data creation should only be done after completing the schema creation step successfully. You must not proceed with uploading actual master data until:

The MDMS schema creation collection has been executed successfully No API failures were observed during execution

If any API fails during schema creation, fix the issue and rerun the schema collection before moving ahead.

⛔ Do not attempt to push master data if the schema setup is incomplete — it will result in errors.


Steps - Data Upload (Actual Master Data)

1

Import Postman Collection

  • Copy the above Postman collection.

  • Click on the Import icon in Postman.

  • Paste the URL and import the collection.

  • After import, you’ll find the collection on the left panel of Postman.

2

Add required variables in the Postman collection (before running the MDMS script)

  • Before proceeding to the next step prerequisites baseUrl and authtoken should be updated.

  • Make sure your Postman environment has these updated values:

    • baseUrl (e.g., https://dev.digit.org) (This is the domain URL where your application is running . Need to copy that domain URL here)

    • User Details (Mdsm user) (Which was created during the installation . Need to copy username, password, and tenantid of the mdmsAdmin user)

    • tenantId (e.g., pb, uk) (In the request body, need to verify or update the tenantId where going to set up the master data )

  • Before executing the MDMS v2 data Creation collection, make sure to add the following variables in the collection's variable section in Postman:

Variable Name
Description

Url

The domain URL where your DIGIT application is hosted. Example: https://pgr-demo.digit.org

📌 Add this in the "Url" variable field.

username

The admin username for MDMS (e.g., mdms admin). Required for authentication.

📌 Add this in the "username" variable field.

password

The admin password for the above username.

📌 Add this in the "password" variable field.

tenant

The state-level tenant ID (e.g., pg).

📌 Add this in the "tenant" variable field.

userTenant

The ULB-level tenant ID where the user has been created (e.g., pg).

📌 Add this in the "userTenant" variable field.

Refer to the screenshot above showing Postman → Variables tab with all fields filled.

3

Final Checklist Before Running

  • Variables are filled correctly as per the environment.

  • Admin user created and credentials are working.

  • The collection is imported and opened in Postman.

  • No missing or invalid values.

4

Run the Postman Collection for master data creation

  • Open Postman and locate the collection named "MDMS v2 data Creation".

  • Click the three dots (⋮) next to the collection name (on the right side).

Refer to the screenshot above for the exact location.

  • From the dropdown menu, select "Run Collection". This will open the Collection Runner window. On the right side of the new screen, you’ll see an orange button labelled "Run MDMS v2 data Creation" — click this.

  • The collection will now start running. You will see each API request and its response as they execute.

5

Check Results

  • ✅ If all requests succeed (green checkmarks), the steps are complete.

  • ❌ If any request fails (red cross), re-run the collection to retry the failed steps.

Steps - Upload Master Data Using API

To confirm that your master schema was uploaded successfully, follow the steps below:

1

Import the below cURL request into Postman

(Refer to earlier instructions for how to import a cURL into Postman)

2

Update fields

Update the fields as given below:

  • Replace <domain_url> with your actual domain URL (e.g., https://pgr-demo.digit.org)

  • Under SchemaDefCriteria, update the "code" field with the schema code. (You can find the code in the response of each schema create API call).

3

Curl import in Postman

Example curl (to be imported in Postman)

curl --location 'http://localhost:8082/mdms-v2/schema/v1/_search' \
--header 'Content-Type: application/json' \
--data '{
    "RequestInfo": {
        "apiId": "asset-services",
        "ver": null,
        "ts": null,
        "action": null,
        "did": null,
        "key": null,
        "msgId": "search with from and to values",
        "authToken": "dfcca143-b5a6-4726-b5cd-c2c949cb0f2b",
        "correlationId": null,
        "userInfo": {
            "id": "1",
            "userName": null,
            "name": null,
            "type": null,
            "mobileNumber": null,
            "emailId": null,
            "roles": null
        }
    },
    "SchemaDefCriteria": {
        "tenantId": "pg",
        "codes":["common-masters.StateInfo"]
    }
}'
4

Run the request

Run the request and check the response to verify that your schemas are correctly uploaded.

Steps MDMS V2 Data Search – Verify Uploaded Master Data

You can use this API to search and verify the master data records you uploaded via the MDMS V2 create APIs.

1

Import the below cURL in Postman

(Refer to earlier steps if unsure how to import cURL)

2

Update fields:

Update the fields as given below:

  • Replace localhost:8086 with your actual domain URL (e.g., https://pgr-demo.digit.org)

  • Replace the authToken with a valid session token (you can get this from the login response).

  • Replace the "schemaCode" with the code of the schema you used while uploading data (you can get it from the create API responses).

3

Example Curl

bash
CopyEdit
curl --location 'http://<your-domain>/mdms-v2/v2/_search' \
--header 'Content-Type: application/json' \
--data '{
  "RequestInfo": {
    "apiId": "asset-services",
    "ver": null,
    "ts": null,
    "action": null,
    "did": null,
    "key": null,
    "msgId": "search with from and to values",
    "authToken": "<your-valid-auth-token>",
    "correlationId": null,
    "userInfo": {
      "id": "1"
    }
  },
  "MdmsCriteria": {
    "tenantId": "pg",
    "schemaCode":"ACCESSCONTROL-ACTIONS-TEST.actions-test",
    "limit":100000
  }
}' 

📌 Notes:

  • Make sure the schemaCode matches exactly with what you created during the data upload.

  • You should receive a JSON response with all the master records under that schema.

  • If you get an empty array, it means either:

    • Data wasn’t created successfully, or

    • The schema code or tenantId is incorrect.

Useful Resources

Type
Link

MDMS V2 Data Migration Postman

Schema Creation Postman

MDMS v2 APIs Search/Create

Video Walkthrough


Notes

Item
Description

Schema code format

The schema code must follow the format: moduleName.masterName. This ensures correct linking between schema and data.

Master data is tenant-specific

Every record must be linked to a specific tenant (like a city or ULB). You must provide the correct tenantId while uploading or searching.

Port forwarding for local testing

If testing locally, make sure services are port-forwarded (especially mdms-v2, egov-user, and egov-apigateway).

Reverse Order Loading

The UI may render fields in reverse order of the JSON array, so to show the first field at the top, you may need to place it last in the array.

Last updated

Was this helpful?