How to add a custom property to an entity with API

This tutorial will create a custom property for a table entity.

Let's assume in your organization you want to keep track of table size, so to achieve that you will be creating a custom property for table entities and then providing a value to that property for each table.

All OpenMetadata APIs are secured so make sure to add the proper headers.

After the API call, you will get a response like this.

Now take the id from above response 7f0b032f-cdc8-4573-abb0-22165dcd8e07.

From UI OpenMetadata only supports three field types

  • String
  • Markdown
  • Integer

This API will return all the available field types, for this tutorial grab the id of the string field type. i.e 7531f881-c37c-4e39-9154-4bdf0802e05e



So for all table entities, we have tableSize custom property available now, let’s add the value for it for the raw_product_catalog table.

All the custom properties value for the entity will be stored in the extension attribute.

Let’s assume you have raw_product_catalog table and its id is 208598fc-bd5f-458c-bf98-59224e1620c7 so our PATCH API request will be like this.

For the first time if we want to add the value to the custom property then the payload should be like this.

When Changing the value of the custom property payload should be like this,