> For the complete documentation index, see [llms.txt](https://docs.workersforlabview.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.workersforlabview.io/worker-apis/public-responses/registering-public-responses.md).

# Registering Public Responses

{% embed url="<https://youtu.be/4_VtngXMLBw>" %}
Registering Public Responses - 60 second video tutorial
{% endembed %}

A Worker is not coupled to its Caller and therefore a Worker's Caller must register to receive Public Response messages from a Worker. It is up to the Caller to decide whether or not it wants to receive one or more Public Response messages from a Worker.

To register to receive a Public Response message, let's look at the example in the [Workers Fundamentals](/getting-started/example-projects.md) example project of how Worker B sends a Public Response message to Worker A.

{% hint style="success" %}
Now would be a great time to open the [Workers Fundamentals](/getting-started/example-projects.md) example project which can be found in the [Workers tools menu](/workers-tools/workers-tools-menu.md).
{% endhint %}

The following steps explain how the Public Response message from Worker B was registered with Worker A.

### Step 1: Create MHL case in Caller to receive Response message

From the block-diagram of Worker A , open the[ Create MHL Case tool](/workers-tools/quickdrop-shortcuts/create-mhl-case-tool-ctrl+9.md). This tool can be activated from the block diagram of a Worker's Main VI, by use of the Quickdrop Shortcut: **Ctrl+9**.&#x20;

Select **Add to Response Cases Section** (shown below) so that the tool will create a MHL case and add it to the **---RESPONSE CASES---** section of the Worker's MHL case structure.

<figure><img src="/files/RG9vICoo5l4PjiC7QJx9" alt=""><figcaption><p>Create MHL Case tool - demonstrating how to create a MHL case to receive a Response message</p></figcaption></figure>

### Step 2: Register Caller's MHL Response case with the Worker

In the **Set Initialization Data** VI for Worker B (you will find this VI in Worker A's \<Initialize> MHL case as shown below), you need to wire the [Case Label](/worker-apis/case-labels.md) that was created for the MHL case in Step 1, to the name of the Public Response in the subWorker's *Initialization Data.vi* cluster (outlined in <mark style="color:red;">red</mark> below).

This allows Worker B to know which case of Worker A to send the Public Response message to.

<figure><img src="/files/uEPjdUb2PGtjV3ofQl7j" alt=""><figcaption><p>Worker A : Main.vi - Registering a subWorker's Public Response message with its Caller</p></figcaption></figure>

### Step 3: Convert Public Response message data to correct data type

In the MHL case that was created in Worker A to receive the Public Response message, place the Public Response VTD VI (from Worker B) and connect it to the **Data** terminal of the MHL case structure, as shown in the image below.

<figure><img src="/files/GW0FTYOE9sxr7mwqDXUV" alt=""><figcaption><p>Worker B : rspvtd_Return number.vi in MHL case of Worker A</p></figcaption></figure>

This completes the registration process for a Public API Response. Worker B can now send the Public Response message to its Caller (i.e. Worker A). Worker A will receive the Response message in the \<Return Number> case of its MHL, and the data in the message will be converted to the correct data type by use of the Public Response VTD VI.
