# Custom properties

Hubspot custom properties allow you to map non-standard data from your source app to Hubspot. Follow the instructions in the linked article to learn how to setup custom fields in your Hubspot instance: <https://knowledge.hubspot.com/properties/create-and-edit-properties>

## Custom property mapping in Middle

Within the action to update or create a contact in Hubspot, you can construct an array of key-value pair objects to map integrated data to your custom property.

#### Internal name

<figure><img src="/files/0t1MHhcSWMvHus0QT6CB" alt=""><figcaption><p>The internal name can also be found in your property settings</p></figcaption></figure>

You will need to enter the internal name as the key in Middle. To view the internal name of a property click the **\</>** code code icon to view or set the internal name for the property, with a maximum of 100 characters.

{% hint style="warning" %}
Once a property is created, the internal name cannot be edited
{% endhint %}

<figure><img src="/files/cB1j75LhnaI5jlWFmhmE" alt=""><figcaption><p>Example of a key-value pair object array mapping data to Hubspot custom properties</p></figcaption></figure>

To create this array, follow the below steps:

1. Create a new action node in your workflow and then select the action to create or update a contact in Hubspot
2. Click to create a new parameter under any of the three customer property arrays
3. Click to [construct an array](/middle-docs/building-workflows/workflow-parameters.md#advanced-parameters)
4. Add a new parameter within this array
5. Click to [construct an object](/middle-docs/building-workflows/workflow-parameters.md#advanced-parameters)
6. This will give you an object where you can add a [text box](/middle-docs/building-workflows/workflow-parameters.md#constant-and-calculated-values) to the custom field key and then map your data in the value

{% hint style="success" %}
This input parameter can accept all data types. If you receive a data type error in the workflow editor, you can feel free to ignore it.
{% endhint %}


---

# 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.middle.app/middle-docs/guides/app-reference/hubspot/custom-properties.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.
