Skip to main content

Publishing enrichments with Datagrok plugins

Overview​

Datagrok plugins can include enrichments that let users join additional database fields to a table with one click.

Enrichments are defined as JSON files and can be bundled with plugins.

Note: PowerPack plugin should be installed to use the Enrichments feature.

Where to put enrichments​

Place enrichment JSON files in the plugin’s enrichments/ folder:

my-plugin/
└─ enrichments/
└─ my-enrichment.json

Datagrok loads these files automatically when the plugin is published.

Enrichment JSON Format​

Each file defines one enrichment:

{
"name": "Company info",
"connection": "Dbtests:Northwind",
"keySchema": "public",
"keyTable": "orders",
"keyColumn": "customerid",
"fields": [
"public.customers.companyname",
"public.customers.contacttitle"
],
"joins": [
{
"leftTableName": "public.orders",
"rightTableName": "public.customers",
"joinType": "left",
"leftTableKeys": ["customerid"],
"rightTableKeys": ["customerid"]
}
]
}

Fields​

FieldDescription
nameDisplay name shown to users
connectionDatabase connection nqName
keySchemaSchema of the key table
keyTableKey table
keyColumnKey column
fieldsColumns to retrieve (schema.table.column)
joinsTable join definitions

Joins​

Each join specifies how tables are connected:

  • leftTableName, rightTableName: fully qualified table names
  • joinType: left, inner, right
  • leftTableKeys, rightTableKeys: join columns

Conclusion​

After publishing, the enrichment appears in the column context panel and can be applied with one click.

See also: