Import System Metadata Components via the REST API
  • 27 Mar 2024
  • 2 Minutes to read
  • Contributors
  • Dark
    Light
  • PDF

Import System Metadata Components via the REST API

  • Dark
    Light
  • PDF

Article summary

You can upload files to the Knowledge Platform via our REST API using the POST System Scan endpoint. Refer to Knowledge Platform API for more information about our REST API. To ingest the data from your files, the components in the files must conform to this JSON schema:

Schema

             
  {
		"$schema": "https://json-schema.org/draft/2020-12/schema",
		"$id": "https://api.syniti.com/2022-06/catalog.schema.json",
		"title": "Syniti Catalog Scanner Schema",
		"description": "Data catalog scanners are expected to produce JSON files that adhere to this schema for ingestion into Syniti Catalog",
		"type": "array",
		"items": {
			"type": "object",
			"properties": {
				"xid": {
					"type": "string",
					"title": "External ID",
					"description": "A unique identifier for the component within the system that will remain stable over time."
				},
				"name": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"encoding": {
					"type": "string"
				},
				"component_type": {
					"type": "string"
				},
				"consumption_type": {
					"type": "string",
					"enum": [
						"database",
						"schema",
						"table",
						"view",
						"column",
						"constraint",
						"index",
						"key",
						"lookup"
						]
				},
				"components": {
					"type": "array",
					"description": "A list of component XIDs that are children of this component. Each item in this array must be defined elsewhere in a corresponding component object.",
					"uniqueItems": true,
					"items": {
						"type": "string"
						}
					},
					"custom_properties": {
						"type": "object"
						},
					"location_path": {
						"type": "string"
						},
					"action_on_delete": {
						"type": "string"
						},
					"action_on_update": {
						"type": "string"
						},
					"allowable_values": {
						"type": "array",
						"items": {
							"type": "string"
						}
					},
					"allow_null": {
						"type": "boolean"
					},
					"constrained_on": {
						"type": "string",
						"description": "XID of the component being constrained on"
					},
					"data_type": {
						"type": "string
					},
					"default_value": {
						"type": "string"
					},
					"filter_condition": {
						"type": "string"
					},
					"filter_column": {
						"type": "string",
						"description": "XID of the component to which the filter_condition is applied"
						},
					"filters": {
						"type": "array",
						"description": "A list of component XIDs that define filters for this component. Each item in this array must be defined elsewhere in a corresponding component object.",
						"uniqueItems": true,
						"items": {
							"type": "string"
						}
					},
						"included_columns": {
							"type": "array",
							"description": "A list of component XIDs that are included columns of this component. Each item in this array must be defined elsewhere in a corresponding component object.",
							"uniqueItems": true,
							"items": {
								"type": "string"
							}
					},
					"input_output": {
						"type": "string"
					},
					"is_clustered": {
						"type": "boolean"
					},
					"is_descending": {
						"type": "boolean"
					},
					"is_unique": {
						"type": "boolean"
					},
					"key": {
						"type": "boolean"
					},
					"ordinal_position": {
						"type": "integer"
					},
					"precision": {
						"type": "string"
					},
					"reference_data": {
						"type": "array",
						"description": "A list of component XIDs that define reference data for this component. Each item in this array must be defined elsewhere in a corresponding component object.",
						"uniqueItems": true,
						"items": {
							"type": "string"
						}
					},
						"reference_elements": {
							"type": "array",
							"description": "A list of component XIDs that define reference elements for this component. Each item in this array must be defined elsewhere in a corresponding component object.",
							"uniqueItems": true,
							"items": {
								"type": "string"
							}
					},
					"reference_to": {
						"type": "string",
						"description": "XID of the constrained on component's parent"
						},
					"scale": {
						"type": "integer"
						},
					"size": {
						"type": "string"
						},
					"source": {
						"type": "string",
						"description": "XID of the component referencing the target component"
					},
					"target": {
						"type": "string",
						"description": "XID of the component being referenced by the source component"
					},
						"tags": {
							"type": "array",
							"items": {
								"type": "string"
							}
					},
						"usage": {
							"type": "string"
						},
						"validate": {
							"type": "boolean",
							"description": "Validation flag (typically used for foreign keys)"
						},
						"is_field": {
							"type": "boolean"
						},
						"text_column": {
							"type": "string",
							"description": "XID for the component used to define the text value"
						},
						"language_column": {
							"type": "string",
							"description": "XID for the component used to define the language"
							}
					},
						"required": [
							"xid"
					]

			}


}


		


What's Next
Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.
ESC

Eddy AI, facilitating knowledge discovery through conversational intelligence