Updated on 2024-11-06 GMT+08:00

Querying All Relationships in a Model

Function

This API is used to query all relationships in a model.

Calling Method

For details, see Calling APIs.

URI

GET /v2/{project_id}/design/{model_id}/table-model/relation

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID, see Project ID and Account ID.

model_id

Yes

String

ID of the relational model. The value of this parameter is of the string type instead of the long type. The value of model_id can be obtained from the API used to obtain a model.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

table_ids

No

String

Table model ID. Set this parameter to the string type instead of the long type.

biz_type

No

String

Type of a table.

Options:

  • TABLE_MODEL: relationship modeling (logical entity/physical table)

  • FACT_LOGIC_TABLE: fact table

limit

No

Integer

Number of records to be queried on each page, that is, Y records to be queried. The default value is 50, and the value range is [1,100].

offset

No

Integer

Start coordinate of the query, that is, the number of skipped data records. The value can only be 0 or an integer multiple of limit. If the value does not meet the requirement, the value is rounded down. The default value is 0.

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

IAM token, which is obtained by calling the IAM API for obtaining a user token (value of X-Subject-Token in the response header).

This field is mandatory for authentication using tokens.

workspace

Yes

String

Workspace ID. For details about how to obtain the workspace ID, see Instance ID and Workspace ID.

X-Project-Id

No

String

Project ID. For details about how to obtain the project ID, see Project ID and Account ID.

This parameter is mandatory for API requests that use AK/SK authentication in multi-project scenarios.

Content-Type

No

String

Default value: application/json;charset=UTF-8

This parameter is optional. If the body is available, this parameter is mandatory. If the body is unavailable, you do not need to set this parameter or verify it.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

data

data object

data: unified outermost data structure of the returned result.

Table 5 data

Parameter

Type

Description

value

value object

value: unified outer data structure of the returned result.

Table 6 value

Parameter

Type

Description

total

Integer

Total number.

records

Array of records objects

RelationVO information.

Table 7 records

Parameter

Type

Description

tables

Array of TableModelVO objects

TableModelVO information.

inheritances

Array of objects

Level information.

relations

Array of RelationVO objects

RelationVO information.

Table 8 TableModelVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

model_id

String

ID of the relational modeling model. The value of this parameter is of the string type instead of the long type.

parent_table_id

String

Parent table ID. Set this parameter to the string type instead of the long type.

parent_table_name

String

Parent table name, which is read-only.

parent_table_code

String

Parent table code, which is read-only.

related_logic_table_id

String

ID of the associated logical entity. The value of this parameter is of the String type instead of the Long type.

related_logic_table_name

String

Name of an associated logical entity.

related_logic_table_model_id

String

Model ID of the associated logical entity. Set this parameter to the string type instead of the long type.

related_logic_table_model_name

String

Name of the model associated with a logical entity.

model

WorkspaceVO object

Model.

data_format

String

Data Format,

obs_bucket

String

OBS bucket.

obs_location

String

Foreign Table Path

configs

String

Other configurations.

table_type

String

Table type, which is read-only.

owner

String

Person in charge.

tb_name

String

Table name.

dw_id

String

Data connection ID.

db_name

String

Indicates the database name.

queue_name

String

Queue required for executing SQL statements through the DLI data connection. This parameter is mandatory when the data connection type is DLI.

schema

String

Required by the DWS type.

extend_info

String

Indicates the extension information.

tb_guid

String

GUID after table materialization. This parameter is read-only.

tb_id

String

Data table ID. This parameter is read-only.

logic_tb_name

String

Name of a logical entity.

logic_tb_guid

String

GUID of a logical entity. This parameter is read-only.

description

String

Description.

status

String

Release status of an entity. This parameter is read-only and does not need to be set during creation and update.

Options:

  • DRAFT: draft

  • PUBLISH_DEVELOPING: to be reviewed

  • PUBLISHED: released

  • OFFLINE_DEVELOPING: to be reviewed

  • OFFLINE: offline

  • REJECT: rejected

logic_tb_id

String

ID of a logical entity. The value is of the String type instead of the Long type.

biz_catalog_id

String

ID of the home service category. The value is of the String type instead of the Long type.

catalog_path

String

Path of the home service category: {"l1Id":"","l2Id":"","l3Id":""}.

create_by

String

Creator, which is read-only.

update_by

String

Updater, which is read-only.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

tags

Array of TagRecordVO objects

Read-only table tags

approval_info

ApprovalVO object

Approval information. This parameter is read-only. Latest review information about a business object, including the business details, reviewer information, and review time.

new_biz

BizVersionManageVO object

Service version management. This parameter is read-only.

attributes

Array of TableModelAttributeVO objects

Table attribute information.

mappings

Array of TableMappingVO objects

Table mapping information.

relations

Array of RelationVO objects

Relationship.

dw_type

String

Data connection type, which corresponds to the type of the data warehouse where the table is located. The value can be DLI, DWS, MRS_HIVE, POSTGRESQL, MRS_SPARK, CLICKHOUSE, MYSQL, Oracle, or DORIS.

dw_name

String

Data connection name. This parameter is read-only and does not need to be set when you create or update a data connection.

l1

String

Chinese name of the subject area group. This parameter is read-only and does not need to be set when you create or update a subject area group.

l2

String

Chinese name of the subject area. This parameter is read-only and does not need to be set during creation and update.

l3

String

Chinese name of the business object. This parameter is read-only and does not need to be set during creation and update.

l1_id

String

Subject area group ID, which is read-only. The value of this parameter is of the String type instead of the Long type.

l2_id

String

Subject area ID.

l3_id

String

Service object ID, which is read-only. The value of this parameter is of the String type instead of the Long type.

partition_conf

String

Partition expression.

dlf_task_id

String

ID of a DLF job.

use_recently_partition

Boolean

Indicates whether to use the latest partition.

reversed

Boolean

Indicates whether it is reverse.

dirty_out_switch

Boolean

Indicates whether to output abnormal data.

dirty_out_database

String

Abnormal data output library.

dirty_out_prefix

String

Prefix of an exception table.

dirty_out_suffix

String

Suffix of an exception table.

quality_owner

String

Quality owner.

quality_id

String

Quality ID. Set this parameter to a value of the String type instead of the Long type.

distribute

String

DISTRIBUTE BY [HASH(column)|REPLICATION].

Options:

  • HASH: Hashes specified columns and distributes data to specified DNs through mapping.

  • REPLICATION: Each row in the table exists on all DNs, that is, each DN has complete table data.

distribute_column

String

DISTRIBUTE BY HASH column.

is_partition

Boolean

Indicates whether the table is a partition table. This parameter is read-only.

physical_table

String

Table creation status in the production environment.

dev_physical_table

String

Table creation status in the development environment.

technical_asset

String

Synchronization status of technical assets. This parameter is read-only.

business_asset

String

Service asset synchronization status. This parameter is read-only.

meta_data_link

String

Asset association status. This parameter is read-only.

data_quality

String

Quality job status. This parameter is read-only.

summary_status

String

Overall synchronization status. This parameter is read-only.

dev_version

String

Development environment version. Set this parameter to the string type instead of the long type.

prod_version

String

Production environment version. Set this parameter to the string type instead of the long type.

dev_version_name

String

Version name of the development environment.

prod_version_name

String

Version name in the production environment.

env_type

String

Type of the development and production environment.

Options:

  • INVALID_TYPE: invalid environment

  • DEV_TYPE: development environment

  • PROD_TYPE: production environment

  • DEV_PROD_TYPE: development and production environment

alias

String

Alias

self_defined_fields

Array of SelfDefinedFieldVO objects

User-defined item.

code

String

Message

has_related_physical_table

Boolean

Indicates whether an associated physical table exists.

has_related_logic_table

Boolean

Indicates whether an associated logical entity exists.

Table 9 WorkspaceVO

Parameter

Type

Description

id

String

ID. The value of this parameter is of the String type instead of the Long type.

name

String

Name of the workspace.

description

String

Description.

is_physical

Boolean

Indicates whether a table is a physical table.

frequent

Boolean

Indicates whether it is commonly used.

top

Boolean

Hierarchical governance.

level

String

Data governance layers.

Options:

  • SDI: source data layer

  • DWI: data integration layer

  • DWR: data reporting layer

  • DM: data mart layer

dw_type

String

Data connection type, which corresponds to the type of the data warehouse where the table is located. The value can be DLI, DWS, MRS_HIVE, POSTGRESQL, MRS_SPARK, CLICKHOUSE, MYSQL, Oracle, or DORIS.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

create_by

String

Creator.

update_by

String

Person who updates the information.

type

String

Defines the workspace type enumeration.

Options:

  • THIRD_NF: relational modeling

  • DIMENSION: dimensional modeling

biz_catalog_ids

String

{"l1Ids":[],"l2Ids":[],"l3Ids":[]}: ID list of associated service catalogs.

databases

Array of strings

Array of database names.

table_model_prefix

String

Model verification prefix. The value contains a maximum of 100 characters, including digits, letters, and underscores (_), and starts with a letter.

Table 10 TagRecordVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

tag_id

String

Tag ID. The value is of the String type instead of the Long type.

tag_name

String

Tag name.

biz_id

String

Entity ID. The value is of the String type instead of the Long type.

biz_type

String

Business entity type.

Options:

  • AGGREGATION_LOGIC_TABLE: summary table

  • ATOMIC_INDEX: atomic metric

  • ATOMIC_METRIC: atomic metric (new)

  • BIZ_CATALOG: process architecture directory

  • BIZ_METRIC: service indicator

  • CODE_TABLE: code table

  • COMMON_CONDITION: general filter

  • COMPOSITE_METRIC: Compound Metric (new)

  • COMPOUND_METRIC: compound metric

  • CONDITION_GROUP: restriction group

  • DEGENERATE_DIMENSION: degenerate dimension

  • DERIVATIVE_INDEX: derivative indicator

  • DERIVED_METRIC: derivative indicator (new)

  • DIMENSION: dimension

  • DIMENSION_ATTRIBUTE: dimension attribute

  • DIMENSION_HIERARCHIES: dimension level

  • DIMENSION_LOGIC_TABLE: dimension table

  • DIMENSION_TABLE_ATTRIBUTE: dimension attribute

  • DIRECTORY: directory

  • FACT_ATTRIBUTE: fact table attribute

  • FACT_DIMENSION: fact table dimension

  • FACT_LOGIC_TABLE: fact table

  • FACT_MEASURE: fact table measurement

  • FUNCTION: function

  • INFO_ARCH: information architecture (used for modifying themes in batches)

  • MODEL: model

  • QUALITY_RULE: quality rule

  • SECRECY_LEVEL: security level

  • STANDARD_ELEMENT: data standard

  • STANDARD_ELEMENT_TEMPLATE: data standard template

  • SUBJECT: theme

  • Dimension attributes of SUMMARY_DIMENSION_ATTRIBUTE: summary tables

  • SUMMARY_INDEX: summary table indicator attribute

  • SUMMARY_TIME: time period attribute of the SDR table

  • TABLE_MODEL: relationship model (logical model/physical model)

  • TABLE_MODEL_ATTRIBUTE: relationship model attribute (logical model/physical model)

  • TABLE_MODEL_LOGIC: logical entity

  • TABLE_TYPE: table type

  • TAG: tag

  • TIME_CONDITION: time restriction

create_by

String

Creator.

update_by

String

Person who updates the information.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

Table 11 ApprovalVO

Parameter

Type

Description

id

String

Application ID. The value of this parameter is of the String type instead of the Long type.

tenant_id

String

Project ID. For details about how to obtain the project ID, see the API path parameter project_id.

name_ch

String

Chinese name of a service.

name_en

String

English name of a service.

biz_id

String

Service ID. The value is of the String type instead of the Long type.

biz_type

String

Business entity type.

Options:

  • AGGREGATION_LOGIC_TABLE: summary table

  • ATOMIC_INDEX: atomic metric

  • ATOMIC_METRIC: atomic metric (new)

  • BIZ_CATALOG: process architecture directory

  • BIZ_METRIC: service indicator

  • CODE_TABLE: code table

  • COMMON_CONDITION: general filter

  • COMPOSITE_METRIC: Compound Metric (new)

  • COMPOUND_METRIC: compound metric

  • CONDITION_GROUP: restriction group

  • DEGENERATE_DIMENSION: degenerate dimension

  • DERIVATIVE_INDEX: derivative indicator

  • DERIVED_METRIC: derivative indicator (new)

  • DIMENSION: dimension

  • DIMENSION_ATTRIBUTE: dimension attribute

  • DIMENSION_HIERARCHIES: dimension level

  • DIMENSION_LOGIC_TABLE: dimension table

  • DIMENSION_TABLE_ATTRIBUTE: dimension attribute

  • DIRECTORY: directory

  • FACT_ATTRIBUTE: fact table attribute

  • FACT_DIMENSION: fact table dimension

  • FACT_LOGIC_TABLE: fact table

  • FACT_MEASURE: fact table measurement

  • FUNCTION: function

  • INFO_ARCH: information architecture (used for modifying themes in batches)

  • MODEL: model

  • QUALITY_RULE: quality rule

  • SECRECY_LEVEL: security level

  • STANDARD_ELEMENT: data standard

  • STANDARD_ELEMENT_TEMPLATE: data standard template

  • SUBJECT: theme

  • Dimension attributes of SUMMARY_DIMENSION_ATTRIBUTE: summary tables

  • SUMMARY_INDEX: summary table indicator attribute

  • SUMMARY_TIME: time period attribute of the SDR table

  • TABLE_MODEL: relationship model (logical model/physical model)

  • TABLE_MODEL_ATTRIBUTE: relationship model attribute (logical model/physical model)

  • TABLE_MODEL_LOGIC: logical entity

  • TABLE_TYPE: table type

  • TAG: tag

  • TIME_CONDITION: time restriction

biz_info

String

Serialized service details. The type is string.

biz_info_obj

Object

Service details. The type is object.

biz_version

Integer

Service version.

biz_status

String

Release status of an entity. This parameter is read-only and does not need to be set during creation and update.

Options:

  • DRAFT: draft

  • PUBLISH_DEVELOPING: to be reviewed

  • PUBLISHED: released

  • OFFLINE_DEVELOPING: to be reviewed

  • OFFLINE: offline

  • REJECT: rejected

approval_status

String

Service approval status. This parameter is read-only.

Options:

  • DEVELOPING: being reviewed

  • APPROVED: approved

  • REJECT: rejected

  • WITHDREW: approval cancellation

approval_type

String

Service review type.

Options:

  • PUBLISH: released

  • OFFLINE: offline

submit_time

String

Submitted At

create_by

String

Creator.

l1

String

Chinese name of the subject area group. This parameter is read-only and does not need to be set when you create or update a subject area group.

l2

String

Chinese name of the subject area. This parameter is read-only and does not need to be set during creation and update.

l3

String

Chinese name of the business object. This parameter is read-only and does not need to be set during creation and update.

approval_time

String

Review time.

approver

String

Reviewer.

email

String

Email address of the reviewer.

msg

String

Review information.

directory_path

String

Directory tree.

Table 12 TableModelAttributeVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

name_en

String

Field name.

name_ch

String

Service attribute.

description

String

Description.

obs_location

String

OBS path, which is a subpath.

create_by

String

Creator.

update_by

String

Person who updates the information.

data_type

String

Field type

domain_type

String

Domain to which a field type belongs.

Options:

  • NUMBER: number

  • STRING: character type

  • DATETIME: date type

  • BLOB: large object (BLOB)

  • OTHER: other types

data_type_extend

String

Extended field of the data type.

is_primary_key

Boolean

Indicates whether a key is a primary key.

is_partition_key

Boolean

Indicates whether the key is a partition key.

is_foreign_key

Boolean

Indicates whether a key is a foreign key.

extend_field

Boolean

Indicates whether an attribute is inherited.

not_null

Boolean

Indicates whether the value is empty.

ordinal

Integer

Sequence number.

table_model_id

String

ID of the relational modeling model. The value of this parameter is of the string type instead of the long type.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

tags

Array of TagVO objects

Read-only table tags

secrecy_levels

Array of SecrecyLevelVO objects

Confidentiality

stand_row_id

String

ID of the associated data standard. The value is of the String type instead of the Long type.

stand_row_name

String

Name of the associated data standard. This parameter is read-only.

quality_infos

Array of QualityInfoVO objects

Quality information, which is read-only.

alias

String

Alias

self_defined_fields

Array of SelfDefinedFieldVO objects

User-defined item.

code

String

Logical Attribute Code

related_logic_attr_id

String

Associated logical attribute ID. The value of this parameter is of the String type instead of the Long type.

related_logic_attr_name

String

Associated Logical Entity Attribute Name (Zh)

related_logic_attr_name_en

String

Associated Logical Entity Attribute Name (En)

Table 13 TagVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

name

String

Label name

description

String

Description.

create_by

String

Creator.

update_by

String

Person who updates the information.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

new_biz

BizVersionManageVO object

Service version management. This parameter is read-only.

Table 14 SecrecyLevelVO

Parameter

Type

Description

id

String

Security level ID. The value is of the String type instead of the Long type.

uuid

String

Data security primary key.

name

String

Confidentiality name.

slevel

Integer

Confidentiality level.

description

String

Confidentiality description.

create_by

String

Creator.

update_by

String

Person who updates the information.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

new_biz

BizVersionManageVO object

Service version management. This parameter is read-only.

Table 15 BizVersionManageVO

Parameter

Type

Description

id

String

ID information. The value of this parameter is of the String type instead of the Long type.

biz_type

String

Business entity type.

Options:

  • AGGREGATION_LOGIC_TABLE: summary table

  • ATOMIC_INDEX: atomic metric

  • ATOMIC_METRIC: atomic metric (new)

  • BIZ_CATALOG: process architecture directory

  • BIZ_METRIC: service indicator

  • CODE_TABLE: code table

  • COMMON_CONDITION: general filter

  • COMPOSITE_METRIC: Compound Metric (new)

  • COMPOUND_METRIC: compound metric

  • CONDITION_GROUP: restriction group

  • DEGENERATE_DIMENSION: degenerate dimension

  • DERIVATIVE_INDEX: derivative indicator

  • DERIVED_METRIC: derivative indicator (new)

  • DIMENSION: dimension

  • DIMENSION_ATTRIBUTE: dimension attribute

  • DIMENSION_HIERARCHIES: dimension level

  • DIMENSION_LOGIC_TABLE: dimension table

  • DIMENSION_TABLE_ATTRIBUTE: dimension attribute

  • DIRECTORY: directory

  • FACT_ATTRIBUTE: fact table attribute

  • FACT_DIMENSION: fact table dimension

  • FACT_LOGIC_TABLE: fact table

  • FACT_MEASURE: fact table measurement

  • FUNCTION: function

  • INFO_ARCH: information architecture (used for modifying themes in batches)

  • MODEL: model

  • QUALITY_RULE: quality rule

  • SECRECY_LEVEL: security level

  • STANDARD_ELEMENT: data standard

  • STANDARD_ELEMENT_TEMPLATE: data standard template

  • SUBJECT: theme

  • Dimension attributes of SUMMARY_DIMENSION_ATTRIBUTE: summary tables

  • SUMMARY_INDEX: summary table indicator attribute

  • SUMMARY_TIME: time period attribute of the SDR table

  • TABLE_MODEL: relationship model (logical model/physical model)

  • TABLE_MODEL_ATTRIBUTE: relationship model attribute (logical model/physical model)

  • TABLE_MODEL_LOGIC: logical entity

  • TABLE_TYPE: table type

  • TAG: tag

  • TIME_CONDITION: time restriction

biz_id

String

Service ID. The value is of the String type instead of the Long type.

biz_info

String

Business object information.

status

String

Release status of an entity. This parameter is read-only and does not need to be set during creation and update.

Options:

  • DRAFT: draft

  • PUBLISH_DEVELOPING: to be reviewed

  • PUBLISHED: released

  • OFFLINE_DEVELOPING: to be reviewed

  • OFFLINE: offline

  • REJECT: rejected

biz_version

Integer

Service version, which is read-only.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

Table 16 QualityInfoVO

Parameter

Type

Description

id

String

Code ID. The value of this parameter is of the String type instead of the Long type.

table_id

String

Table ID, which is read-only. Set this parameter to the string type instead of the long type.

attr_id

String

Attribute ID, which is read-only. The value of this parameter is of the String type instead of the Long type.

biz_type

String

Business entity type.

Options:

  • AGGREGATION_LOGIC_TABLE: summary table

  • ATOMIC_INDEX: atomic metric

  • ATOMIC_METRIC: atomic metric (new)

  • BIZ_CATALOG: process architecture directory

  • BIZ_METRIC: service indicator

  • CODE_TABLE: code table

  • COMMON_CONDITION: general filter

  • COMPOSITE_METRIC: Compound Metric (new)

  • COMPOUND_METRIC: compound metric

  • CONDITION_GROUP: restriction group

  • DEGENERATE_DIMENSION: degenerate dimension

  • DERIVATIVE_INDEX: derivative indicator

  • DERIVED_METRIC: derivative indicator (new)

  • DIMENSION: dimension

  • DIMENSION_ATTRIBUTE: dimension attribute

  • DIMENSION_HIERARCHIES: dimension level

  • DIMENSION_LOGIC_TABLE: dimension table

  • DIMENSION_TABLE_ATTRIBUTE: dimension attribute

  • DIRECTORY: directory

  • FACT_ATTRIBUTE: fact table attribute

  • FACT_DIMENSION: fact table dimension

  • FACT_LOGIC_TABLE: fact table

  • FACT_MEASURE: fact table measurement

  • FUNCTION: function

  • INFO_ARCH: information architecture (used for modifying themes in batches)

  • MODEL: model

  • QUALITY_RULE: quality rule

  • SECRECY_LEVEL: security level

  • STANDARD_ELEMENT: data standard

  • STANDARD_ELEMENT_TEMPLATE: data standard template

  • SUBJECT: theme

  • Dimension attributes of SUMMARY_DIMENSION_ATTRIBUTE: summary tables

  • SUMMARY_INDEX: summary table indicator attribute

  • SUMMARY_TIME: time period attribute of the SDR table

  • TABLE_MODEL: relationship model (logical model/physical model)

  • TABLE_MODEL_ATTRIBUTE: relationship model attribute (logical model/physical model)

  • TABLE_MODEL_LOGIC: logical entity

  • TABLE_TYPE: table type

  • TAG: tag

  • TIME_CONDITION: time restriction

data_quality_id

String

Quality ID. Set this parameter to a value of the String type instead of the Long type.

show_control

Integer

Indicates whether to display the regular expression.

data_quality_name

String

Quality name.

alert_conf

String

Configure alarms.

expression

String

Regular expression configuration in regular expression-related validation rules.

extend_info

String

Indicates the extension information.

from_standard

Boolean

Indicates whether the data comes from the data standard quality configuration. This parameter is read-only.

result_description

String

Result description.

create_by

String

Creator, which is read-only.

update_by

String

Updater, which is read-only.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

Table 17 TableMappingVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

name

String

Name.

description

String

Description.

target_table_id

String

Destination table ID. The value is of the String type instead of the Long type.

src_model_id

String

Model ID of the source table in relational modeling. Set this parameter to the string type instead of the long type.

src_model_name

String

Source model name.

view_text

String

Source of the collected view. The dws view is used reversely.

target_table_name

String

Name of the destination table.

details

Array of TableMappingDetailVO objects

Details.

source_tables

Array of MappingSourceTableVO objects

Mapped table information.

source_fields

Array of MappingSourceFieldVO objects

Mapped field information.

create_time

String

Creation time. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

create_by

String

Creator.

update_by

String

Person who updates the information.

Table 18 TableMappingDetailVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

mapping_id

String

Name.

target_attr_id

String

Destination field ID. The value of this parameter is of the String type instead of the Long type.

target_attr_name

String

Sort by destination field.

src_table_ids

String

Source table ID.

src_table_names

Array of strings

Source table name array, which is read-only.

src_table_db_names

Array of strings

Database name array of the source table. This parameter is read-only.

src_table_model_ids

Array of strings

Model ID array of the source table in relational modeling. This parameter is read-only. Set this parameter to the string type instead of the long type.

src_table_id_list

Array of strings

Source table ID array, which is read-only. The value of this parameter is of the String type instead of the Long type.

src_attr_ids

String

ID of a field in the source table.

src_attr_names

Array of strings

Array of field names in the source table. This parameter is read-only.

src_attr_id_list

Array of strings

Field ID array in the source table. This parameter is read-only. Set this parameter to a value of the String type instead of the Long type.

remark

String

Description.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

create_by

String

Creator.

update_by

String

Person who updates the information.

target_attr

Object

Target attribute.

Table 19 MappingSourceTableVO

Parameter

Type

Description

table1_id

String

Table 1 ID. Set this parameter to the string type instead of the long type.

table2_id

String

Table 2 ID. Set this parameter to the string type instead of the long type.

table1_name

String

Name of table 1.

table2_name

String

Name of table 2.

join_type

String

Association type.

Options:

  • LEFT: left outer join

  • RIGHT: right outer join

  • INNER: inner join

  • FULL: full connection

join_fields

Array of MappingJoinFieldVO objects

on condition.

Table 20 MappingJoinFieldVO

Parameter

Type

Description

field1_id

String

ID of attribute 1. The value is of the String type instead of the Long type.

field2_id

String

ID of attribute 2. The value is of the String type instead of the Long type.

field1_name

String

Name of attribute 1.

field2_name

String

Name of attribute 2.

Table 21 MappingSourceFieldVO

Parameter

Type

Description

target_field_id

String

Target field ID, which is a field in the current table. Set this parameter to the string type instead of the long type.

target_field_name

String

Target field code.

field_ids

String

Source field ID. Use commas (,) to separate multiple IDs.

transform_expression

String

Conversion expression.

field_names

Array of strings

List of source field names.

changed

Boolean

Indicates whether a field is changed.

Table 22 SelfDefinedFieldVO

Parameter

Type

Description

fd_name_ch

String

Chinese name of a user-defined item.

fd_name_en

String

English name of a customized item.

not_null

Boolean

Whether a parameter is mandatory.

fd_value

String

Attribute value

Table 23 RelationVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

source_table_id

String

Source table ID. The value is of the String type instead of the Long type.

target_table_id

String

Target table ID. Set this parameter to a value of the String type instead of the Long type.

name

String

Relationship name.

source_table_name

String

Name of the source table.

target_table_name

String

Name of the destination table.

role

String

Role.

tenant_id

String

Tenant ID.

source_type

String

Relationship type, which is read-only.

Options:

  • ONE: Each child (parent) logical entity has only one record in the parent (child) logical entity.

  • ZERO_OR_ONE: indicates that each child (parent) logical entity data record corresponds to only one data record in the parent (child) logical entity.

  • ZERO_OR_N: indicates that each child (parent) logical entity data record may correspond to multiple data records in the parent (child) logical entity.

  • ONE_OR_N: Each child (parent) logical entity corresponds to at least one data record in the parent (child) logical entity.

target_type

String

Relationship type, which is read-only.

Options:

  • ONE: Each child (parent) logical entity has only one record in the parent (child) logical entity.

  • ZERO_OR_ONE: indicates that each child (parent) logical entity data record corresponds to only one data record in the parent (child) logical entity.

  • ZERO_OR_N: indicates that each child (parent) logical entity data record may correspond to multiple data records in the parent (child) logical entity.

  • ONE_OR_N: Each child (parent) logical entity corresponds to at least one data record in the parent (child) logical entity.

create_by

String

Creator.

update_by

String

Person who updates the information.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

mappings

Array of RelationMappingVO objects

Table attribute information, which is read-only.

Table 24 RelationMappingVO

Parameter

Type

Description

id

String

Code. Set this parameter to a value of the String type instead of the Long type.

relation_id

String

Relationship ID. Set this parameter to a value of the String type instead of the Long type.

source_field_id

String

Source field ID. The value is of the String type instead of the Long type.

target_field_id

String

Target field ID. Set this parameter to a value of the String type instead of the Long type.

source_field_name

String

Name of the source table.

target_field_name

String

Name of the destination table.

create_by

String

Creator.

update_by

String

Person who updates the information.

create_time

String

Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

update_time

String

Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z.

Status code: 400

Table 25 Response body parameters

Parameter

Type

Description

error_code

String

Error code, for example, DS.6000, indicating that the request fails to be processed.

error_msg

String

Error message

data

Object

Returned data information.

Status code: 401

Table 26 Response body parameters

Parameter

Type

Description

error_code

String

Error code, for example, DS.6000, indicating that the request fails to be processed.

error_msg

String

Error message

data

Object

Returned data information.

Status code: 403

Table 27 Response body parameters

Parameter

Type

Description

error_code

String

Error code, for example, DS.6000, indicating that the request fails to be processed.

error_msg

String

Error message

data

Object

Returned data information.

Example Requests

This API is used to query all relationships in a model. The first 100 relationships are queried.

GET https://{endpoint}/v2/{project_id}/design/1208450696123420672/table-model/relation?page_start=1&page_size=100&no_version_detail=true

Example Responses

Status code: 200

This operation succeeds, and the returned data is RelationVO.

{
  "data" : {
    "value" : {
      "total" : 1,
      "records" : [ {
        "tables" : [ {
          "id" : "1204850788338421760",
          "model_id" : "1204810091711352832",
          "parent_table_id" : null,
          "parent_table_name" : null,
          "parent_table_code" : null,
          "related_logic_table_id" : null,
          "related_logic_table_name" : null,
          "related_logic_table_model_id" : null,
          "related_logic_table_model_name" : null,
          "model" : null,
          "data_format" : null,
          "obs_bucket" : null,
          "obs_location" : null,
          "configs" : null,
          "table_type" : "CLICKHOUSE_TABLE",
          "owner" : "",
          "tb_name" : "fact_dim_clicknor",
          "dw_id" : "f2e4ba7e48df4599a18563f7918fb9ed",
          "db_name" : "default",
          "queue_name" : null,
          "schema" : null,
          "extend_info" : "{\"dirtyOutDatabase\":\"\",\"dirtyOutPrefix\":\"\",\"dirtyOutSuffix\":\"\",\"dirtyOutSwitch\":\"false\"}",
          "tb_guid" : null,
          "tb_id" : null,
          "logic_tb_name" : "ClickNormal# () ()",
          "logic_tb_guid" : null,
          "description" : "ClickNormal# () ()",
          "status" : "DRAFT",
          "logic_tb_id" : null,
          "biz_catalog_id" : "958408897973161984",
          "catalog_path" : null,
          "create_by" : "ei_dayu_y00321344_01",
          "update_by" : "ei_dayu_y00321344_01",
          "create_time" : "2024-02-07T18:06:53+08:00",
          "update_time" : "2024-02-07T18:06:53+08:00",
          "tags" : [ ],
          "approval_info" : null,
          "new_biz" : null,
          "attributes" : [ {
            "id" : "1204850788338421761",
            "name_en" : "ww",
            "name_ch" : "ww",
            "description" : null,
            "obs_location" : null,
            "create_by" : null,
            "update_by" : null,
            "data_type" : "STRING",
            "domain_type" : "STRING",
            "data_type_extend" : null,
            "is_primary_key" : false,
            "is_partition_key" : false,
            "is_foreign_key" : false,
            "extend_field" : false,
            "not_null" : false,
            "ordinal" : 1,
            "table_model_id" : null,
            "create_time" : "2024-02-07T18:06:53+08:00",
            "update_time" : "2024-02-07T18:06:53+08:00",
            "tags" : [ ],
            "secrecy_levels" : [ ],
            "stand_row_id" : null,
            "stand_row_name" : null,
            "quality_infos" : null,
            "alias" : null,
            "self_defined_fields" : null,
            "code" : null,
            "related_logic_attr_id" : null,
            "related_logic_attr_name" : null,
            "related_logic_attr_name_en" : null
          } ],
          "mappings" : null,
          "relations" : [ ],
          "dw_type" : "CLICKHOUSE",
          "dw_name" : null,
          "l1" : null,
          "l2" : null,
          "l3" : null,
          "l1_id" : null,
          "l2_id" : null,
          "l3_id" : "958408897973161984",
          "partition_conf" : null,
          "dlf_task_id" : null,
          "use_recently_partition" : false,
          "reversed" : null,
          "dirty_out_switch" : false,
          "dirty_out_database" : "",
          "dirty_out_prefix" : "",
          "dirty_out_suffix" : "",
          "quality_owner" : null,
          "quality_id" : null,
          "distribute" : null,
          "distribute_column" : null,
          "is_partition" : false,
          "physical_table" : "NO_NEED",
          "dev_physical_table" : "NO_NEED",
          "technical_asset" : "NO_NEED",
          "business_asset" : "NO_NEED",
          "meta_data_link" : "NO_NEED",
          "data_quality" : "NO_NEED",
          "summary_status" : "NO_NEED",
          "dev_version" : null,
          "prod_version" : null,
          "dev_version_name" : null,
          "prod_version_name" : null,
          "env_type" : "INVALID_TYPE",
          "alias" : null,
          "self_defined_fields" : null,
          "code" : null,
          "has_related_physical_table" : false,
          "has_related_logic_table" : false
        } ],
        "inheritances" : [ ],
        "relations" : [ ]
      } ]
    }
  }
}

Status code: 400

{
  "error_code" : "DS.60xx",
  "error_msg" : "The user request is illegal."
}

Status code: 401

{
  "error_code" : "DS.60xx",
  "error_msg" : "User authentication failed."
}

Status code: 403

{
  "error_code" : "DS.60xx",
  "error_msg" : "The user does not have permission to call this API."
}

SDK Sample Code

The SDK sample code is as follows.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.dataartsstudio.v1.region.DataArtsStudioRegion;
import com.huaweicloud.sdk.dataartsstudio.v1.*;
import com.huaweicloud.sdk.dataartsstudio.v1.model.*;


public class ListTableModelRelationsSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        DataArtsStudioClient client = DataArtsStudioClient.newBuilder()
                .withCredential(auth)
                .withRegion(DataArtsStudioRegion.valueOf("<YOUR REGION>"))
                .build();
        ListTableModelRelationsRequest request = new ListTableModelRelationsRequest();
        request.withModelId("{model_id}");
        try {
            ListTableModelRelationsResponse response = client.listTableModelRelations(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkdataartsstudio.v1.region.dataartsstudio_region import DataArtsStudioRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkdataartsstudio.v1 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = DataArtsStudioClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(DataArtsStudioRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListTableModelRelationsRequest()
        request.model_id = "{model_id}"
        response = client.list_table_model_relations(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    dataartsstudio "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := dataartsstudio.NewDataArtsStudioClient(
        dataartsstudio.DataArtsStudioClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListTableModelRelationsRequest{}
	request.ModelId = "{model_id}"
	response, err := client.ListTableModelRelations(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.

Status Codes

Status Code

Description

200

This operation succeeds, and the returned data is RelationVO.

400

BadRequest

401

Unauthorized

403

Forbidden