swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector Lineage API schemes: - https tags: - name: Lineage paths: /lineage/{guid}/next: get: operationId: microsoftAzureLineageGetnextpage description: Return immediate next page lineage info about entity with pagination parameters: - $ref: '#/parameters/Azure.Core.Foundations.ApiVersionParameter' - name: guid in: path description: The globally unique identifier of the entity. required: true type: string - name: direction in: query description: The direction of the lineage, which could be INPUT, OUTPUT or BOTH. required: true type: string enum: - INPUT - OUTPUT - BOTH x-ms-enum: name: LineageDirection modelAsString: true values: - name: Input value: INPUT description: input - name: Output value: OUTPUT description: output - name: Both value: BOTH description: both - name: offset in: query description: The offset for pagination purpose. required: false type: integer format: int32 - name: limit in: query description: The page size - by default there is no paging. required: false type: integer format: int32 responses: '200': description: The request has succeeded. schema: $ref: '#/definitions/AtlasLineageInfo' default: description: An unexpected error response. schema: $ref: '#/definitions/AtlasErrorResponse' x-ms-examples: Lineage_GetNextPage: $ref: ./examples/Lineage_GetNextPage.json summary: Microsoft Azure Get Lineage Guid Next tags: - Lineage /atlas/v2/lineage/{guid}: get: tags: - Lineage description: Get lineage info of the entity specified by GUID. operationId: microsoftAzureLineageGetlineagegraph x-ms-examples: Lineage_GetLineageGraph: $ref: ./examples/Lineage_GetLineageGraph.json parameters: - $ref: '#/parameters/guid' - $ref: '#/parameters/depth' - $ref: '#/parameters/width' - $ref: '#/parameters/direction' - $ref: '#/parameters/includeParent' - $ref: '#/parameters/getDerivedLineage' responses: '200': description: OK. If the request is valid. schema: $ref: '#/definitions/AtlasLineageInfo_2' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' summary: Microsoft Azure Get Atlas Lineage Guid /lineage/{guid}/next/: get: tags: - Lineage description: Return immediate next page lineage info about entity with pagination operationId: microsoftAzureLineageNextpagelineage x-ms-examples: Lineage_NextPageLineage: $ref: ./examples/Lineage_NextPageLineage.json parameters: - $ref: '#/parameters/guid' - $ref: '#/parameters/direction' - $ref: '#/parameters/getDerivedLineage' - $ref: '#/parameters/offset' - $ref: '#/parameters/limit' - $ref: '#/parameters/purviewAPIVersion' responses: '200': description: OK. If the input is valid. schema: $ref: '#/definitions/AtlasLineageInfo_2' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' summary: Microsoft Azure Get Lineage Guid Next /atlas/v2/lineage/uniqueAttribute/type/{typeName}: get: tags: - Lineage description: 'Returns lineage info about entity.

In addition to the typeName path parameter, attribute key-value pair(s) can be provided in the following format

attr:[attrName]=[attrValue]

NOTE: The attrName and attrValue should be unique across entities, eg. qualifiedName.
The REST request would look something like this:
GET /v2/lineage/uniqueAttribute/type/aType?attr:aTypeAttribute=someValue.' operationId: microsoftAzureLineageGetlineagebyuniqueattribute x-ms-examples: Lineage_GetLineageByUniqueAttribute: $ref: ./examples/Lineage_GetLineageByUniqueAttribute.json produces: - application/json parameters: - $ref: '#/parameters/typeName' - $ref: '#/parameters/depth' - $ref: '#/parameters/width' - $ref: '#/parameters/direction' - $ref: '#/parameters/includeParent' - $ref: '#/parameters/getDerivedLineage' - name: attr:qualifiedName in: query description: The qualified name of the entity. (This is only an example. qualifiedName can be changed to other unique attributes) required: false type: string responses: '200': schema: $ref: '#/definitions/AtlasLineageInfo_2' description: If Lineage exists for the given entity examples: application/json: baseEntityGuid: '...' guidEntityMap: property1: classificationNames: - '...' - '...' classifications: - entityGuid: '...' entityStatus: DELETED validityPeriods: - {} - {} attributes: property1: {} property2: {} typeName: '...' - entityGuid: '...' entityStatus: PURGED validityPeriods: - {} - {} attributes: property1: {} property2: {} typeName: '...' displayText: '...' guid: '...' isIncomplete: true labels: - '...' - '...' meaningNames: - '...' - '...' meanings: - confidence: 12345 createdBy: '...' description: '...' displayText: '...' expression: '...' relationGuid: '...' source: '...' status: DISCOVERED steward: '...' termGuid: '...' - confidence: 12345 createdBy: '...' description: '...' displayText: '...' expression: '...' relationGuid: '...' source: '...' status: DISCOVERED steward: '...' termGuid: '...' status: PURGED attributes: property1: {} property2: {} typeName: '...' property2: classificationNames: - '...' - '...' classifications: - entityGuid: '...' entityStatus: ACTIVE validityPeriods: - {} - {} attributes: property1: {} property2: {} typeName: '...' - entityGuid: '...' entityStatus: ACTIVE validityPeriods: - {} - {} attributes: property1: {} property2: {} typeName: '...' displayText: '...' guid: '...' isIncomplete: true labels: - '...' - '...' meaningNames: - '...' - '...' meanings: - confidence: 12345 createdBy: '...' description: '...' displayText: '...' expression: '...' relationGuid: '...' source: '...' status: DEPRECATED steward: '...' termGuid: '...' - confidence: 12345 createdBy: '...' description: '...' displayText: '...' expression: '...' relationGuid: '...' source: '...' status: OBSOLETE steward: '...' termGuid: '...' status: ACTIVE attributes: property1: {} property2: {} typeName: '...' lineageDepth: 12345 lineageDirection: BOTH relations: - fromEntityId: '...' relationshipId: '...' toEntityId: '...' - fromEntityId: '...' relationshipId: '...' toEntityId: '...' description: If Lineage exists for the given entity default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' summary: Microsoft Azure Get Atlas Lineage Uniqueattribute Type Typename definitions: Azure.Core.uuid: type: string format: uuid description: Universally Unique Identifier LineageDirection: type: string description: Lineage direction enum: - INPUT - OUTPUT - BOTH x-ms-enum: name: LineageDirection modelAsString: true values: - name: Input value: INPUT description: input - name: Output value: OUTPUT description: output - name: Both value: BOTH description: both LastModifiedTS: type: string title: lastModifiedTS description: ETag for concurrency control. ParentRelation: type: object description: The lineage parents relation with GUID of the parent entity and to child entity. properties: childEntityId: type: string description: The GUID of child entity. relationshipId: type: string description: The GUID of relationship. parentEntityId: type: string description: The GUID of parent entity. AtlasEntityHeader: type: object description: An instance of an entity - like hive_table, hive_database. properties: attributes: type: object description: The attributes of the struct. additionalProperties: {} typeName: type: string description: The name of the type. lastModifiedTS: type: string description: ETag for concurrency control. classificationNames: type: array description: An array of classification names. items: type: string classifications: type: array description: An array of classifications. items: $ref: '#/definitions/AtlasClassification' x-ms-identifiers: [] displayText: type: string description: The display text. guid: type: string description: The GUID of the record. isIncomplete: type: boolean description: Whether it is a shell entity labels: type: array description: labels items: type: string meaningNames: type: array description: An array of meanings. items: type: string meanings: type: array description: An array of term assignment headers. items: $ref: '#/definitions/AtlasTermAssignmentHeader' x-ms-identifiers: [] status: $ref: '#/definitions/EntityStatus' description: 'Status of the entity - can be active or deleted. Deleted entities are not removed.' AtlasEntityHeader_2: type: object title: AtlasEntityHeader allOf: - $ref: '#/definitions/AtlasStruct' - properties: classificationNames: type: array description: An array of classification names. items: type: string classifications: type: array description: An array of classifications. items: $ref: '#/definitions/AtlasClassification_2' displayText: type: string description: The display text. guid: type: string description: The GUID of the record. isIncomplete: readOnly: false description: Whether it is a shell entity type: boolean labels: readOnly: false description: labels type: array items: type: string meaningNames: type: array description: An array of meanings. items: type: string meanings: type: array description: An array of term assignment headers. items: $ref: '#/definitions/AtlasTermAssignmentHeader_2' status: $ref: '#/definitions/Status' description: An instance of an entity - like hive_table, hive_database. EntityStatus: type: string description: Status - can be active or deleted enum: - ACTIVE - DELETED x-ms-enum: name: EntityStatus modelAsString: true values: - name: Active value: ACTIVE description: The status is active. - name: Deleted value: DELETED description: The status is deleted. AtlasErrorResponse: type: object description: An error response from the service properties: requestId: $ref: '#/definitions/Azure.Core.uuid' description: The request ID. errorCode: type: string description: The error code. errorMessage: type: string description: The error message. AtlasTermAssignmentHeader: type: object description: The header for term assignment. properties: confidence: type: integer format: int32 description: The confidence of the term assignment. createdBy: type: string description: The user who created the record. description: type: string description: The description of the term assignment. displayText: type: string description: The display text. expression: type: string description: The expression of the term assignment. relationGuid: $ref: '#/definitions/Azure.Core.uuid' description: The GUID of the relationship. status: $ref: '#/definitions/AtlasTermAssignmentStatus' description: The status of terms assignment. steward: type: string description: The steward of the term. termGuid: $ref: '#/definitions/Azure.Core.uuid' description: The GUID of the term. AtlasLineageInfoExtraProperties: type: object description: The lineage direction additionalProperties: description: The entity guid. LineageDirection_2: type: string title: LineageDirection description: The enum of lineage direction. enum: - INPUT - OUTPUT - BOTH x-ms-enum: name: LineageDirection modelAsString: true AtlasTermAssignmentStatus: type: string description: Status for term assignment enum: - DISCOVERED - PROPOSED - IMPORTED - VALIDATED - DEPRECATED - OBSOLETE - OTHER x-ms-enum: name: AtlasTermAssignmentStatus modelAsString: true values: - name: Discovered value: DISCOVERED description: The status is discovered. - name: Proposed value: PROPOSED description: The status is proposed. - name: Imported value: IMPORTED description: The status is imported. - name: Validated value: VALIDATED description: The status is validated. - name: Deprecated value: DEPRECATED description: The status is deprecated. - name: Obsolete value: OBSOLETE description: The status is obsolete. - name: Other value: OTHER description: Other status. AtlasStruct: type: object properties: attributes: type: object description: The attributes of the struct. additionalProperties: {} typeName: type: string description: The name of the type. lastModifiedTS: $ref: '#/definitions/LastModifiedTS' title: AtlasStruct description: Captures details of struct contents. Not instantiated directly, used only via AtlasEntity, AtlasClassification. AtlasTermAssignmentStatus_2: type: string title: AtlasTermAssignmentStatus description: The status of terms assignment. enum: - DISCOVERED - PROPOSED - IMPORTED - VALIDATED - DEPRECATED - OBSOLETE - OTHER x-ms-enum: name: AtlasTermAssignmentStatus modelAsString: true AtlasLineageInfo: type: object description: The lineage information. properties: baseEntityGuid: type: string description: The GUID of the base entity. guidEntityMap: type: object description: The GUID entity map. additionalProperties: $ref: '#/definitions/AtlasEntityHeader' widthCounts: type: object description: The entity count in specific direction. additionalProperties: additionalProperties: {} type: object lineageDepth: type: integer format: int32 description: The depth of lineage. lineageWidth: type: integer format: int32 description: The width of lineage. childrenCount: type: integer format: int32 description: The number of children node. lineageDirection: $ref: '#/definitions/LineageDirection' description: The enum of lineage direction. parentRelations: type: array description: An array of parentRelations relations. items: $ref: '#/definitions/ParentRelation' x-ms-identifiers: [] relations: type: array description: An array of lineage relations. items: $ref: '#/definitions/LineageRelation' x-ms-identifiers: [] ParentRelation_2: type: object properties: childEntityId: type: string description: The GUID of child entity. relationshipId: type: string description: The GUID of relationship. parentEntityId: type: string description: The GUID of parent entity. title: ParentRelation description: The lineage parents relation with GUID of the parent entity and to child entity. AtlasTermAssignmentHeader_2: type: object properties: confidence: type: integer format: int32 description: The confidence of the term assignment. createdBy: type: string description: The user who created the record. description: type: string description: The description of the term assignment. displayText: type: string description: The display text. expression: type: string description: The expression of the term assignment. relationGuid: type: string description: The GUID of the relationship. source: type: string description: The source of the term. status: $ref: '#/definitions/AtlasTermAssignmentStatus_2' steward: type: string description: The steward of the term. termGuid: type: string description: The GUID of the term. title: AtlasTermAssignmentHeader description: The header for term assignment. Status: type: string title: Status description: Status of the entity - can be active or deleted. Deleted entities are not removed from Atlas store. enum: - ACTIVE - DELETED x-ms-enum: name: Status modelAsString: true AtlasClassification: type: object description: 'An instance of a classification; it doesn''t have an identity, this object exists only when associated with an entity.' properties: attributes: type: object description: The attributes of the struct. additionalProperties: {} typeName: type: string description: The name of the type. lastModifiedTS: type: string description: ETag for concurrency control. entityGuid: type: string description: The GUID of the entity. entityStatus: $ref: '#/definitions/EntityStatus' description: 'Status of the entity - can be active or deleted. Deleted entities are not removed.' removePropagationsOnEntityDelete: type: boolean description: Determines if propagations will be removed on entity deletion. validityPeriods: type: array description: An array of time boundaries indicating validity periods. items: $ref: '#/definitions/TimeBoundary' x-ms-identifiers: [] LineageRelation: type: object description: The lineage relation with GUID of the from and to entity. properties: fromEntityId: type: string description: The GUID of from-entity. relationshipId: type: string description: The GUID of relationship. toEntityId: type: string description: The GUID of to-entity. ErrorResponse: description: An error response from the service type: object properties: requestId: type: string description: The request ID. errorCode: type: string description: The error code. errorMessage: type: string description: The error message. TimeBoundary: type: object description: Captures time-boundary details properties: endTime: type: string description: The end of the time boundary. startTime: type: string description: The start of the time boundary. timeZone: type: string description: The timezone of the time boundary. TimeBoundary_2: type: object properties: endTime: type: string description: The end of the time boundary. startTime: type: string description: The start of the time boundary. timeZone: type: string description: The timezone of the time boundary. title: TimeBoundary description: Captures time-boundary details AtlasLineageInfo_2: type: object properties: baseEntityGuid: type: string description: The GUID of the base entity. guidEntityMap: type: object description: The GUID entity map. additionalProperties: $ref: '#/definitions/AtlasEntityHeader_2' widthCounts: type: object description: The entity count in specific direction. additionalProperties: $ref: '#/definitions/AtlasLineageInfoExtraProperties' lineageDepth: type: integer format: int32 description: The depth of lineage. lineageWidth: type: integer format: int32 description: The width of lineage. includeParent: type: boolean description: True to return the parent of the base entity. childrenCount: type: integer format: int32 description: The number of children node. lineageDirection: $ref: '#/definitions/LineageDirection_2' parentRelations: type: array description: An array of parentRelations relations. items: $ref: '#/definitions/ParentRelation_2' relations: type: array description: An array of lineage relations. items: $ref: '#/definitions/LineageRelation_2' title: AtlasLineageInfo description: The lineage information. LineageRelation_2: type: object properties: fromEntityId: type: string description: The GUID of from-entity. relationshipId: type: string description: The GUID of relationship. toEntityId: type: string description: The GUID of to-entity. title: LineageRelation description: The lineage relation with GUID of the from and to entity. AtlasClassification_2: type: object title: AtlasClassification allOf: - $ref: '#/definitions/AtlasStruct' - properties: entityGuid: type: string description: The GUID of the entity. entityStatus: $ref: '#/definitions/Status' removePropagationsOnEntityDelete: type: boolean description: Determines if propagations will be removed on entity deletion. validityPeriods: type: array description: An array of time boundaries indicating validity periods. items: $ref: '#/definitions/TimeBoundary_2' source: type: string description: indicate the source who create the classification detail sourceDetails: type: object additionalProperties: type: object properties: {} description: more detail on source information description: An instance of a classification; it doesn't have an identity, this object exists only when associated with an entity. parameters: limit: name: limit description: The page size - by default there is no paging. in: query required: false type: integer format: int32 x-ms-parameter-location: method getDerivedLineage: name: getDerivedLineage description: True to include derived lineage in the response in: query required: false type: boolean x-ms-parameter-location: method typeName: name: typeName description: The name of the type. in: path required: true type: string minLength: 1 maxLength: 4096 x-ms-parameter-location: method width: name: width description: The number of max expanding width in lineage. in: query required: false type: integer default: 10 format: int32 x-ms-parameter-location: method guid: name: guid description: The globally unique identifier of the entity. in: path required: true type: string minLength: 1 maxLength: 4096 x-ms-parameter-location: method includeParent: name: includeParent description: True to include the parent chain in the response. in: query required: false type: boolean x-ms-parameter-location: method offset: name: offset description: The offset for pagination purpose. in: query required: false type: integer format: int32 x-ms-parameter-location: method depth: name: depth description: The number of hops for lineage. in: query required: false type: integer default: 3 format: int32 x-ms-parameter-location: method purviewAPIVersion: name: api-version description: Version of Purview APIs in: query required: true type: string x-ms-parameter-location: method Azure.Core.Foundations.ApiVersionParameter: name: api-version in: query description: The API version to use for this operation. required: true type: string minLength: 1 x-ms-parameter-location: method x-ms-client-name: apiVersion direction: name: direction description: The direction of the lineage, which could be INPUT, OUTPUT or BOTH. in: query required: true type: string enum: - BOTH - INPUT - OUTPUT x-ms-enum: name: direction modelAsString: true x-ms-parameter-location: method x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'