3 Replies Latest reply on Nov 10, 2021 5:22 AM by Darren Wrigley

    Delete Custom Lineage with API

    Gabriel Wallace New Member

      I followed this KB Article to create custom lineage links between two objects in the catalog and it works as expected. However, I can't seem to find a way to delete a particular link. Is there a way to do this via the API?

        • 1. Re: Delete Custom Lineage with API
          Darren Wrigley Guru

          you can use deleteSourceLinks or deleteDestinationLinks to remove lineage links.

          personally i think it is easier to create a custom lineage resource and then re-load or purge the resource.


          if you want to use deleteSourceLinks - the format is (from the swagger ui/spec)

             "deleteSourceLinks": [
                    "associationId": "string",
          "objectId": "string",
          "properties": [
          "attrUuid": "string",
          "value": "string"
          • 2. Re: Delete Custom Lineage with API
            Gabriel Wallace New Member

            Hi Darren. Thanks for the information. I'm currently working on automating putting custom lineage into EDC using the EDC API. In this case, would you recommend using the update objects call to add/remove source and destination links or use a custom lineage resource? What are the pros and cons of each approach?

            • 3. Re: Delete Custom Lineage with API
              Darren Wrigley Guru

              my personal preference is custom lineage for these reasons:-

              1. -you can then decide if you want to use connection assignment, or direct lineage.  for connection assignment, you do not need the full id and probably do not need to lookup the objects in EDC
              2. you can purge/delete whenever you want - just like any other scanner
              3. missing links report - when using connection assignment
              4. scheduling like any other resource works too - except that the custom linege resource type does not have a pre-execution script (but you can use that via a custom resource that only has lineage for some cases)
              5. you can execute the custom linegae import via api (create the resource, upload the file, start the scan etc)


              the API method works too, either that i have suggested in this thread, but if you want to delete links, you will need to write extra code & know what links to delete (using a providerid might help)


              the downside to the custom lineage resource type, is that it is counted as a resource for licensing purposes

              2 of 2 people found this helpful