Updates an existing hierarchy configuration.
Updates an existing hierarchy configuration by modifying fields such as display name, description, hierarchy levels, fallback asset type, name separator, activation status, and priority. System configurations cannot be modified.
PATCH https://[hostname]/api/v1/openlineage/config/hierarchies/{configId}
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| configId | string | Yes |
Unique identifier of the hierarchy configuration to update. |
displayName |
string | No |
Display name of the hierarchy configuration. |
description |
string | No |
Description of the hierarchy configuration. |
hierarchyLevels |
array[object] | No |
List of hierarchy levels that define how assets are matched and categorized. |
fallbackAssetTypeXref |
string | No |
Asset type reference applied when no hierarchy level pattern matches. |
nameSeparator |
string | No |
Character used to split qualified names. |
isActive |
boolean | No |
Indicates whether the configuration is active. |
priority |
integer | No |
Priority of the configuration used for ordering. |
hierarchyLevels Item Properties
| Field | Type | Required | Description |
|---|---|---|---|
pattern |
string | Yes |
Regular expression used to match qualified names (e.g., "^[^.]+\\.[^.]+\\.[^.]+$"). |
assetTypeXref |
string | Yes |
Asset type reference applied when the pattern matches (e.g., "{Oracle Table}"). |
catalogType |
string | Yes |
Catalog type assigned to assets that match the pattern. |
parentLevel |
integer | No |
Hierarchy level that defines the parent relationship. |
description |
string | No |
Description of the hierarchy level. |
For the complete UpdateHierarchyConfigInput schema definition, see the example below.
{
"displayName": "example",
"description": "example",
"hierarchyLevels": [
{
"pattern": "example",
"assetTypeXref": "example",
"catalogType": "example",
"parentLevel": 0,
"description": "example"
}
],
"fallbackAssetTypeXref": "example",
"nameSeparator": "example",
"isActive": true,
"priority": 0
}
Request Examples
Each example shows how to call this endpoint with the documented method, URL, headers, and request body format.
curl -X PATCH "/api/v1/openlineage/config/hierarchies/{configId}" \
-H "Authorization: Bearer <JWT>" \
-H "Content-Type: application/json" \
-d '{
"nameSeparator": "example",
"hierarchyLevels": [
{
"pattern": "example",
"assetTypeXref": "example",
"catalogType": "example"
}
],
"description": "example"
}'
fetch("/api/v1/openlineage/config/hierarchies/{configId}", {
method: "PATCH",
headers: {
"Authorization": "Bearer <JWT>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"nameSeparator": "example",
"hierarchyLevels": [
{
"pattern": "example",
"assetTypeXref": "example",
"catalogType": "example"
}
],
"description": "example"
})
})
.then(res => res.json())
.then(data => console.log(data));
import json
import requests
url = "/api/v1/openlineage/config/hierarchies/{configId}"
headers = {
"Authorization": "Bearer <JWT>",
"Content-Type": "application/json"
}
payload = json.loads('''{
"nameSeparator": "example",
"hierarchyLevels": [
{
"pattern": "example",
"assetTypeXref": "example",
"catalogType": "example"
}
],
"description": "example"
}''')
response = requests.patch(url, headers=headers, json=payload)
print(response.json())
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{
"nameSeparator": "example",
"hierarchyLevels": [
{
"pattern": "example",
"assetTypeXref": "example",
"catalogType": "example"
}
],
"description": "example"
}`)
req, _ := http.NewRequest("PATCH", "/api/v1/openlineage/config/hierarchies/{configId}", body)
req.Header.Set("Authorization", "Bearer <JWT>")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body2, _ := io.ReadAll(resp.Body)
fmt.Println(string(body2))
}
Success Responses
This payload returns the updated hierarchy configuration after the patch request is applied.
It includes namespace/display metadata, hierarchy levels, fallback settings, activation state, and audit fields.
Representative payload generated from the response schema.
{
"_id": "string",
"workspaceId": "string",
"namespacePrefix": "string",
"displayName": "string",
"description": "string",
"hierarchyLevels": [
{
"pattern": "string",
"assetTypeXref": "string",
"catalogType": "Datasource",
"parentLevel": 0,
"description": "string"
}
],
"fallbackAssetTypeXref": "string",
"nameSeparator": ".",
"isActive": true,
"priority": 0,
"createdAt": "string",
"createdBy": "string",
"updatedAt": "string",
"updatedBy": "string"
}
Error Responses
This response indicates the submitted update payload is invalid.
This response indicates the target configuration is system-defined and cannot be modified by this endpoint.
This response indicates no configuration exists for the specified configuration ID.