Update hierarchy configuration - Precisely Data Integrity Suite

Data Integrity Suite APIs

Product
Data_Integrity
Spatial_Analytics
Data_Enrichment
geo_addressing_1
Services
Spatial Analytics
Data Enrichment
Geo Addressing
ft:title
Data Integrity Suite APIs
ft:locale
en-US
PublicationType
pt_developer
copyrightfirst
2023
copyrightlast
2026

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.