> For the complete documentation index, see [llms.txt](https://documentation.opencrvs.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.opencrvs.org/v1.9/setup/3.-installation/3.2-set-up-your-own-country-configuration/3.2.3-set-up-cr-offices-and-health-facilities/3.2.3.2-prepare-source-file-for-health-facilities.md).

# 4.2.3.2 Prepare source file for health facilities

Prepare your ***health-facilities*** source file. This is a [csv](https://en.wikipedia.org/wiki/Comma-separated_values) file for every health facility where births and deaths occur in your country. You can import and create csv files in Excel or Google Drive.

Using our [health-facilities.csv](https://github.com/opencrvs/opencrvs-countryconfig/blob/develop/src/data-seeding/locations/source/health-facilities.csv) file as an example, update it with the Health facility information for your country - do not move the file from this location. Our health-facilities.csv file looks like this:

| id          | name                        | partOf               | locationType     |
| ----------- | --------------------------- | -------------------- | ---------------- |
| pXhz0PLiYZX | Chamakubi Health Post       | Location/oEBf29y8JP8 | HEALTH\_FACILITY |
| di3U5u7F8Y3 | Ibombo Rural Health Centre  | Location/oEBf29y8JP8 | HEALTH\_FACILITY |
| B5LpoYehUfI | Chikobo Rural Health Centre | Location/oEBf29y8JP8 | HEALTH\_FACILITY |
| g42i3akwlpj | Chilochabalenje Health Post | Location/oEBf29y8JP8 | HEALTH\_FACILITY |

Each row will represent a unique "Health facility" in your country.

{% hint style="info" %}
Do not change or re-format the header row as the seeding process requires these names to be precise in order to parse the csv. Do not use commas in any cell and do not have any empty rows.
{% endhint %}

The **id** column is a unique identifier for each health facility. This could be a unique identifier you already use or alternatively you could create unique identifiers programatically, using Excel or using an online UUID generator website for which there are many free ones available. **It is important to note that the statisticalID must contain no spaces, special characters or commas**

This Excel / Google Sheets formula creates a random unique ID:

```
=DEC2HEX(RANDBETWEEN(0, 4294967295), 8)
```

The **name** column contains the human readable name for the health facility. We do not currently support multilingual names for the health facility. **It is important to note that the name must contain no commas**

The **partOf** column shows that the health facility is part of a higher level administrative division. Notice how we use the **admin\<level>Pcode** to set the health facility as a child of a particular parent district. For example **Chamakubi Health Post** district is a child of **Ibombo** district thanks to this partOf value. Perhaps you may also recognise that these form part of [FHIR Reference URLs](https://www.hl7.org/fhir/references-definitions.html#Reference.reference) hence the requirement for them to be absent of spaces and special characters:

```
Location/HPGiE9Jjh2
```

* The **locationType** column must be set to HEALTH\_FACILITY


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://documentation.opencrvs.org/v1.9/setup/3.-installation/3.2-set-up-your-own-country-configuration/3.2.3-set-up-cr-offices-and-health-facilities/3.2.3.2-prepare-source-file-for-health-facilities.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
