# Data Migration

{% hint style="info" %}
This migration is mukta-specific, it will not be part of the master code.
{% endhint %}

### Program Creation

After installation of all required services, port-forward the program service and create programs for each ULB. A sample curl is added below.

{% code fullWidth="true" %}

```
curl --location 'http://localhost:8082/program-service/v1/program/_create' \
--header 'Content-Type: application/json' \
--data-raw '{
    "signature": null,
    "header": {
        "message_id": "123",
        "message_ts": "1708428280",
        "message_type": "program",
        "action": "create",
        "sender_id": "program@https://unified-dev.digit.org",
        "receiver_id": "program@https://unified-qa.digit.org"
    },
    "message": {
        "location_code": "pg.citya",
        "name": "ifix",
        "description": "Empowering local communities through sustainable development projects.",
        "start_date": 1672531200,
        "end_date": 1704067200,
        "children":null,
        "status": {
            "status_code": "INITIATED",
            "status_message": "ACTIVE"
        },
        "additional_details": {},
        "function_code": "in.pg.OGES",
        "administration_code": "in.pg.ac.HUDD.UID",
        "recipient_segment_code": "in.pg.rsc",
        "economic_segment_code": "in.pg.CE.IA.OC",
        "source_of_fund_code": "in.pg.CSS",
        "target_segment_code": null,
        "currency_code": "INR",
        "locale_code": "in.pg.citya"
    }
}'
```

{% endcode %}

* Configure all program codes that you created for each ULB to the MDMS.

### IFMS Data Migration

* IFMS adapter data migration for mukta-adapter ad program service
  * Use [this](https://github.com/egovernments/DIGIT-Works/tree/IFIX-MIGRATION/utilities/iFix%20Migration) specific branch for iFix migration.&#x20;
  * Update environment variables according to the environment.
  * Build the Python migration script and deploy it in the environment.
  * Port forward the service and call the API to start the migration.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.digit.org/public-finance/introducing-public-finance-management-pfm/release-notes/data-migration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
