---
title: "Adding a Custom Field using API"
slug: "adding-a-custom-field-using-api"
updated: 2025-07-09T09:20:28Z
published: 2025-07-09T09:20:28Z
canonical: "knowledge-base.rossum.ai/adding-a-custom-field-using-api"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://knowledge-base.rossum.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Adding a Custom Field using API

After a [high-level overview of configuring the captured fields](/help/docs/first-fields-customization-steps) and the [guide to updating the extraction schema using Excel](/help/docs/updating-the-extraction-schema-using-cli), let's take a look what it takes to do a common operation with a schema - adding a custom field. For a quick overview of the schema adjustments process, you can skip to the video at the end of this article.

Download the schema as XLSX file:

```plaintext
rossum> schema get 51333 --format xlsx -O demo_schema.xlsx
```

Such an XLSX file could look like this:

![](https://cdn.document360.io/1bb6f6bc-c04c-4ace-a1e8-8c4cfd3fbc98/Images/Documentation/Devs%20-%20Adding%20a%20Custom%20Field%20using%20API%2001.png)

To create a custom field, add a new row to the XLSX file. The columns that need to be filled out are:

- **section**: defines what section does the datapoint belong to
- **data**: the unique id of the datapoint. When creating new datapoints, we recommend to follow the syntax style of the [rir_field_names](https://elis.rossum.ai/api/docs/#extracted-field-types), especially for customers who plan to have their own custom model trained.
- **label**: the name of the field as shown in the UI
- **type**: one of string, date, number, enum
- **rir_field_names**: if this is an empty list [], this field is not mapped to any output of the AI engine and is not extracted automatically. However, it can contain a name of an AI engine field, typically one of the [pre-trained fields](https://elis.rossum.ai/api/docs/#extracted-field-types) as per the linked list. **Mapping to an AI engine field name not provided by Rossum will have no effect.

You can even map your field to more AI outputs as a fallback option. For example, if an `invoice_id` output did not extract any data, the data that were extracted by the `var_sym` output will be used instead:

![](https://cdn.document360.io/1bb6f6bc-c04c-4ace-a1e8-8c4cfd3fbc98/Images/Documentation/Devs%20-%20Adding%20a%20Custom%20Field%20using%20API%2002.png)

Remaining columns of the XLSX correspond to the attributes that are explained in the [Schema Content](https://elis.rossum.ai/api/docs/#document-schema) section of the API reference documentation.

Once you have finished your adjustments, upload the modified file version back to Rossum, in JSON or XLSX format:

```plaintext
rossum> schema update 51333 --rewrite demo_schema.xlsx
```

You can find a more detailed guide on how to add dropdown select box [here](/help/docs/adding-a-custom-dropdown-select-box-field-using-api).

## Video Guide

[YouTube video player](https://www.youtube.com/embed/m4YI6dSLsQY?si=Oi1xKYK1pxGZ9ayv)
