共用方式為


Type - Bulk Create

大量建立所有 atlas 類型定義。 請避免重新建立現有的類型。

POST {endpoint}/datamap/api/atlas/v2/types/typedefs

URI 參數

名稱 位於 必要 類型 Description
endpoint
path True

string

要求本文

名稱 類型 Description
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

分類定義的陣列。

entityDefs

AtlasEntityDef[]

實體定義的陣列。

enumDefs

AtlasEnumDef[]

列舉定義的陣列。

relationshipDefs

AtlasRelationshipDef[]

關聯性定義的陣列。

structDefs

AtlasStructDef[]

結構定義的陣列。

termTemplateDefs

TermTemplateDef[]

字詞範本定義的陣列。

回應

名稱 類型 Description
200 OK

AtlasTypesDef

要求已成功。

Other Status Codes

AtlasErrorResponse

未預期的錯誤回應。

安全性

OAuth2Auth

類型: oauth2
Flow: implicit
授權 URL: https://login.microsoftonline.com/common/oauth2/authorize

範圍

名稱 Description
https://purview.azure.net/.default

範例

Type_BulkCreate
Type_BulkCreateBusinessMetadataDefs

Type_BulkCreate

範例要求

POST {endpoint}/datamap/api/atlas/v2/types/typedefs

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [
    {
      "name": "azure_sql_server_example",
      "superTypes": [
        "azure_resource"
      ],
      "typeVersion": "1.0",
      "attributeDefs": [
        {
          "name": "databases",
          "typeName": "array<azure_sql_db>",
          "cardinality": "SET",
          "isIndexable": false,
          "isOptional": true,
          "isUnique": false
        }
      ]
    }
  ],
  "relationshipDefs": []
}

範例回覆

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [
    {
      "category": "ENTITY",
      "guid": "a47fd902-a564-45f1-aa51-ce9224955881",
      "createdBy": "ExampleCreator",
      "updatedBy": "ExampleUpdator",
      "createTime": 1553672211954,
      "updateTime": 1553672211954,
      "version": 1,
      "name": "azure_sql_server_example",
      "description": "azure_sql_server_example",
      "typeVersion": "1.0",
      "attributeDefs": [
        {
          "name": "databases",
          "typeName": "array<azure_sql_db>",
          "isOptional": true,
          "cardinality": "SET",
          "valuesMinCount": 0,
          "valuesMaxCount": 2147483647,
          "isUnique": false,
          "isIndexable": false,
          "includeInNotification": false
        }
      ],
      "superTypes": [
        "azure_resource"
      ],
      "subTypes": []
    }
  ],
  "relationshipDefs": []
}

Type_BulkCreateBusinessMetadataDefs

範例要求

POST {endpoint}/datamap/api/atlas/v2/types/typedefs

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [],
  "relationshipDefs": [],
  "businessMetadataDefs": [
    {
      "name": "myBizMetadata1",
      "description": "",
      "attributeDefs": [
        {
          "name": "bizAttr1",
          "typeName": "string",
          "isOptional": true,
          "cardinality": "SINGLE",
          "isUnique": false,
          "isIndexable": true,
          "options": {
            "maxStrLength": "50",
            "applicableEntityTypes": "[\"Path\"]"
          }
        }
      ]
    }
  ]
}

範例回覆

{
  "enumDefs": [],
  "structDefs": [],
  "classificationDefs": [],
  "entityDefs": [],
  "relationshipDefs": [],
  "businessMetadataDefs": [
    {
      "category": "BUSINESS_METADATA",
      "guid": "f26dc6d1-be9c-a0ce-a274-b6388ff6e2eb",
      "createdBy": "ServiceAdmin",
      "updatedBy": "ServiceAdmin",
      "createTime": 1646994112241,
      "updateTime": 1646994112241,
      "version": 1,
      "name": "myBizMetadata1",
      "description": "This is my businessMetadata1",
      "typeVersion": "1.0",
      "lastModifiedTS": "1",
      "attributeDefs": [
        {
          "name": "bizAttr1",
          "typeName": "string",
          "isOptional": true,
          "cardinality": "SINGLE",
          "valuesMinCount": 0,
          "valuesMaxCount": 1,
          "isUnique": false,
          "isIndexable": true,
          "includeInNotification": false,
          "options": {
            "applicableEntityTypes": "[\"Path\"]",
            "maxStrLength": "50"
          }
        }
      ]
    }
  ]
}

定義

名稱 Description
AtlasAttributeDef

類別,擷取結構屬性的詳細數據。

AtlasBusinessMetadataDef

類別,擷取結構類型的詳細數據。

AtlasClassificationDef

類別,擷取分類類型的詳細數據。

AtlasConstraintDef

類別,擷取條件約束的詳細數據。

AtlasEntityDef

類別,擷取實體類型的詳細數據。

AtlasEnumDef

類別,擷取列舉類型的詳細數據。

AtlasEnumElementDef

類別,擷取列舉專案的詳細數據。

AtlasErrorResponse

來自服務的錯誤回應

AtlasRelationshipAttributeDef

relationshipEndDef 代表關聯性的結尾。 關聯性的結尾是由類型、屬性名稱、基數,以及它是否為關聯性的容器結尾所定義。

AtlasRelationshipDef

AtlasRelationshipDef 是定義關聯性的 TypeDef。 如同其他 typeDefs,AtlasRelationshipDef 具有名稱。 建立 RelationshipDef 之後,就會有 guid。 名稱和 guid 是識別 RelationshipDef 的 2 種方式。 RelationshipDefs 有 2 個結尾,每個結尾都會指定基數、EntityDef 類型名稱和名稱,以及選擇性地指出結尾是否為容器。 RelationshipDefs 可以有 AttributeDefs - 雖然只允許基本類型。 RelationshipDefs 具有 relationshipCategory,指定所需的 UML 關聯性類型。使用 EntityDefs 和 RelationshipDefs 的方式是 EntityDefs 會定義 AttributeDefs,這些 AttributeDefs 不會指定 EntityDef 類型名稱作為其類型。 RelationshipDefs 會將新的屬性引入實體實例。 例如 EntityDef A 可能有 attr1、attr2、attr3 屬性

EntityDef B 可能有 attr4,attr5,attr6 RelationshipDef AtoB 可能會定義 2 個結束的屬性

end1: type A, name attr7 end2: type B, name attr8

建立 EntityDef A 的實例時,它會有 attr1,attr2,attr3,attr7 建立 EntityDef B 的實例時,它會有屬性 attr4,attr5,attr6,attr8

如此一來,relationshipDefs 就可以與 entityDefs 分開撰寫,並將關聯性屬性插入實體實例

AtlasRelationshipEndDef

relationshipEndDef 代表關聯性的結尾。 關聯性的結尾是由類型、屬性名稱、基數,以及它是否為關聯性的容器結尾所定義。

AtlasStructDef

類別,擷取結構類型的詳細數據。

AtlasTypesDef

型別的定義。

CardinalityValue

基數

DateFormat

日期格式。

NumberFormat

數位格式。

RelationshipCategory

關聯性類別

RoundingMode

四捨五入模式

TermTemplateDef

詞彙詞彙的字詞範本定義。

TimeZone

時區資訊。

TypeCategory

類型類別

AtlasAttributeDef

類別,擷取結構屬性的詳細數據。

名稱 類型 Description
cardinality

CardinalityValue

單一值屬性或多重值屬性。

constraints

AtlasConstraintDef[]

條件約束的陣列。

defaultValue

string

屬性的預設值。

description

string

屬性的描述。

includeInNotification

boolean

判斷它是否包含在通知中。

isIndexable

boolean

判斷它是否可編製索引。

isOptional

boolean

判斷它是否為選擇性。

isUnique

boolean

判斷它是否是唯一的。

name

string

屬性的名稱。

options

object

屬性的選項。

typeName

string

型別的名稱。

valuesMaxCount

integer

值的最大計數。

valuesMinCount

integer

值的最小計數。

AtlasBusinessMetadataDef

類別,擷取結構類型的詳細數據。

名稱 類型 Description
attributeDefs

AtlasAttributeDef[]

屬性定義的陣列。

category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

description

string

型別定義的描述。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

serviceType

string

服務類型。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

AtlasClassificationDef

類別,擷取分類類型的詳細數據。

名稱 類型 Description
attributeDefs

AtlasAttributeDef[]

屬性定義的陣列。

category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

description

string

型別定義的描述。

entityTypes

string[]

在 classificationDef 中指定 entityType 名稱清單,可確保只能將分類套用至這些 entityType。

實體類型的任何子類型都會繼承限制。

任何 classificationDef 子類型都會繼承父系 entityTypes 限制。

任何 classificationDef 子類型都可以藉由指定 entityTypes 子集來進一步限制父系 entityTypes 限制。

當沒有任何父限制時,空的 entityTypes 清單表示沒有任何限制。

當有父系限制時,空的 entityTypes 清單表示子類型會挑選父系限制。

如果提供 entityTypes 清單,其中一個繼承自另一個類型,將會遭到拒絕。 這應該鼓勵更簡潔的分類Defs。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

serviceType

string

服務類型。

subTypes

string[]

子類型的陣列。

superTypes

string[]

超級類型的陣列。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

AtlasConstraintDef

類別,擷取條件約束的詳細數據。

名稱 類型 Description
params

條件約束定義的參數。

type

string

條件約束的類型。

AtlasEntityDef

類別,擷取實體類型的詳細數據。

名稱 類型 Description
attributeDefs

AtlasAttributeDef[]

屬性定義的陣列。

category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

description

string

型別定義的描述。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

relationshipAttributeDefs

AtlasRelationshipAttributeDef[]

關聯性屬性的陣列。

serviceType

string

服務類型。

subTypes

string[]

子類型的陣列。

superTypes

string[]

超級類型的陣列。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

AtlasEnumDef

類別,擷取列舉類型的詳細數據。

名稱 類型 Description
category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

defaultValue

string

預設值。

description

string

型別定義的描述。

elementDefs

AtlasEnumElementDef[]

列舉項目定義的陣列。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

serviceType

string

服務類型。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

AtlasEnumElementDef

類別,擷取列舉專案的詳細數據。

名稱 類型 Description
description

string

列舉項目定義的描述。

ordinal

integer

列舉項目定義的序數。

value

string

列舉項目定義的值。

AtlasErrorResponse

來自服務的錯誤回應

名稱 類型 Description
errorCode

string

錯誤碼。

errorMessage

string

錯誤訊息。

requestId

string

要求標識碼。

AtlasRelationshipAttributeDef

relationshipEndDef 代表關聯性的結尾。 關聯性的結尾是由類型、屬性名稱、基數,以及它是否為關聯性的容器結尾所定義。

名稱 類型 Description
cardinality

CardinalityValue

單一值屬性或多重值屬性。

constraints

AtlasConstraintDef[]

條件約束的陣列。

defaultValue

string

屬性的預設值。

description

string

屬性的描述。

includeInNotification

boolean

判斷它是否包含在通知中。

isIndexable

boolean

判斷它是否可編製索引。

isLegacyAttribute

boolean

判斷它是否為舊版屬性。

isOptional

boolean

判斷它是否為選擇性。

isUnique

boolean

判斷它是否是唯一的。

name

string

屬性的名稱。

options

object

屬性的選項。

relationshipTypeName

string

關聯性類型的名稱。

typeName

string

型別的名稱。

valuesMaxCount

integer

值的最大計數。

valuesMinCount

integer

值的最小計數。

AtlasRelationshipDef

AtlasRelationshipDef 是定義關聯性的 TypeDef。 如同其他 typeDefs,AtlasRelationshipDef 具有名稱。 建立 RelationshipDef 之後,就會有 guid。 名稱和 guid 是識別 RelationshipDef 的 2 種方式。 RelationshipDefs 有 2 個結尾,每個結尾都會指定基數、EntityDef 類型名稱和名稱,以及選擇性地指出結尾是否為容器。 RelationshipDefs 可以有 AttributeDefs - 雖然只允許基本類型。 RelationshipDefs 具有 relationshipCategory,指定所需的 UML 關聯性類型。使用 EntityDefs 和 RelationshipDefs 的方式是 EntityDefs 會定義 AttributeDefs,這些 AttributeDefs 不會指定 EntityDef 類型名稱作為其類型。 RelationshipDefs 會將新的屬性引入實體實例。 例如 EntityDef A 可能有 attr1、attr2、attr3 屬性

EntityDef B 可能有 attr4,attr5,attr6 RelationshipDef AtoB 可能會定義 2 個結束的屬性

end1: type A, name attr7 end2: type B, name attr8

建立 EntityDef A 的實例時,它會有 attr1,attr2,attr3,attr7 建立 EntityDef B 的實例時,它會有屬性 attr4,attr5,attr6,attr8

如此一來,relationshipDefs 就可以與 entityDefs 分開撰寫,並將關聯性屬性插入實體實例

名稱 類型 Description
attributeDefs

AtlasAttributeDef[]

屬性定義的陣列。

category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

description

string

型別定義的描述。

endDef1

AtlasRelationshipEndDef

relationshipEndDef 代表關聯性的結尾。 關聯性的結尾是由類型、屬性名稱、基數,以及它是否為關聯性的容器結尾所定義。

endDef2

AtlasRelationshipEndDef

relationshipEndDef 代表關聯性的結尾。 關聯性的結尾是由類型、屬性名稱、基數,以及它是否為關聯性的容器結尾所定義。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

relationshipCategory

RelationshipCategory

[關聯性] 類別會決定內含專案和生命週期周圍的關聯性樣式。 UML 術語用於值。 ASSOCIATION 是不含內含項的關聯性。 COMPOSITION 和 AGGREGATION 是內含項目關聯性。 差異在於容器及其子系的生命週期。 在 COMPOSITION 案例中,子系不能在沒有容器的情況下存在。 針對 AGGREGATION,容器和子系的生命週期完全獨立。

relationshipLabel

string

關聯性的標籤。

serviceType

string

服務類型。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

AtlasRelationshipEndDef

relationshipEndDef 代表關聯性的結尾。 關聯性的結尾是由類型、屬性名稱、基數,以及它是否為關聯性的容器結尾所定義。

名稱 類型 Description
cardinality

CardinalityValue

單一值屬性或多重值屬性。

description

string

關聯性結束定義的描述。

isContainer

boolean

判斷其是否為容器。

isLegacyAttribute

boolean

判斷它是否為舊版屬性。

name

string

關聯性結束定義的名稱。

type

string

關聯性結束的類型。

AtlasStructDef

類別,擷取結構類型的詳細數據。

名稱 類型 Description
attributeDefs

AtlasAttributeDef[]

屬性定義的陣列。

category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

description

string

型別定義的描述。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

serviceType

string

服務類型。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

AtlasTypesDef

型別的定義。

名稱 類型 Description
businessMetadataDefs

AtlasBusinessMetadataDef[]

businessMetadataDefs

classificationDefs

AtlasClassificationDef[]

分類定義的陣列。

entityDefs

AtlasEntityDef[]

實體定義的陣列。

enumDefs

AtlasEnumDef[]

列舉定義的陣列。

relationshipDefs

AtlasRelationshipDef[]

關聯性定義的陣列。

structDefs

AtlasStructDef[]

結構定義的陣列。

termTemplateDefs

TermTemplateDef[]

字詞範本定義的陣列。

CardinalityValue

基數

名稱 類型 Description
LIST

string

清單

SET

string

設置

SINGLE

string

DateFormat

日期格式。

名稱 類型 Description
availableLocales

string[]

可用地區設定的陣列。

calendar

number

日曆

dateInstance

DateFormat

日期格式。

dateTimeInstance

DateFormat

日期格式。

instance

DateFormat

日期格式。

lenient

boolean

決定日期格式的寬大。

numberFormat

NumberFormat

數位格式。

timeInstance

DateFormat

日期格式。

timeZone

TimeZone

時區資訊。

NumberFormat

數位格式。

名稱 類型 Description
availableLocales

string[]

數位格式。

currency

string

貨幣。

currencyInstance

NumberFormat

數位格式。

groupingUsed

boolean

判斷是否使用群組。

instance

NumberFormat

數位格式。

integerInstance

NumberFormat

數位格式。

maximumFractionDigits

integer

小數位數的最大值。

maximumIntegerDigits

integer

整數位數的最大值。

minimumFractionDigits

integer

小數位數的最小值。

minimumIntegerDigits

integer

整數位數的最小值。

numberInstance

NumberFormat

數位格式。

parseIntegerOnly

boolean

判斷是否只剖析整數。

percentInstance

NumberFormat

數位格式。

roundingMode

RoundingMode

四捨五入模式的列舉。

RelationshipCategory

關聯性類別

名稱 類型 Description
AGGREGATION

string

集合體

ASSOCIATION

string

協會

COMPOSITION

string

組成

RoundingMode

四捨五入模式

名稱 類型 Description
CEILING

string

天花板

DOWN

string

FLOOR

string

地板

HALF_DOWN

string

半下

HALF_EVEN

string

半偶數

HALF_UP

string

上半

UNNECESSARY

string

必要

UP

string

向上

TermTemplateDef

詞彙詞彙的字詞範本定義。

名稱 類型 Description
attributeDefs

AtlasAttributeDef[]

屬性定義的陣列。

category

TypeCategory

類別目錄的列舉。

createTime

integer

記錄的建立時間。

createdBy

string

建立記錄的使用者。

dateFormatter

DateFormat

日期格式。

description

string

型別定義的描述。

guid

string

型別定義的 GUID。

lastModifiedTS

string

用於並行控制的 ETag。

name

string

型別定義的名稱。

options

object

型別定義的選項。

serviceType

string

服務類型。

typeVersion

string

型別的版本。

updateTime

integer

記錄的更新時間。

updatedBy

string

更新記錄的使用者。

version

integer

記錄的版本。

TimeZone

時區資訊。

名稱 類型 Description
availableIds

string[]

可用標識碼的陣列。

default

TimeZone

時區資訊。

displayName

string

時區的顯示名稱。

dstSavings

integer

日光節約時間的值。

id

string

時區的標識碼。

rawOffset

integer

時區的原始位移。

TypeCategory

類型類別

名稱 類型 Description
ARRAY

string

陣列

CLASSIFICATION

string

分類

ENTITY

string

實體

ENUM

string

列舉

MAP

string

地圖

OBJECT_ID_TYPE

string

物件識別碼類型

PRIMITIVE

string

原始

RELATIONSHIP

string

關係

STRUCT

string

結構

TERM_TEMPLATE

string

字詞範本