Skip to main content

Run Asset Export Basic app
App

Connect docs via MCP

You can use the Asset Export Basic app to export assets—and optionally glossaries and data products—out of Atlan to a file, delivered as a download in Atlan, by email, or to object storage (S3, GCS, or ADLS). This guide shows how to configure and run the app with the Python SDK (pyatlan).

Unlike a connector, this app doesn't crawl a source or create new assets—it reads existing metadata and writes a file, so a run leaves your catalog unchanged.

Prerequisites

Before you begin:

  • Make sure the Asset Export Basic app is available on your tenant's marketplace. If you can't see it, raise a support request to have it enabled.
  • Set up the Python SDK and configure ATLAN_BASE_URL and ATLAN_API_KEY.
  • Only for object storage delivery, have credentials ready for the target S3, GCS, or ADLS bucket. Download and email delivery need no additional credentials.

Configure app workflow

Build the workflow with the CsaUberAssetExportBasic builder—each method maps to a field in the app's setup form.

  1. Create the builder with an authenticated client and choose what to export:

    Choose what to export
    from pyatlan.client.atlan import AtlanClient
    from pyatlan.model.apps import CsaUberAssetExportBasic

    client = AtlanClient()

    export = (
    CsaUberAssetExportBasic(client)
    .export_scope("ENRICHED_ONLY") # ENRICHED_ONLY | ALL | GLOSSARIES_ONLY | PRODUCTS_ONLY
    .qualified_name_prefix_for_assets("default/snowflake/1234567890")
    .include_description(True)
    .include_glossaries(True)
    .include_data_products(True)
    .include_archived(False)
    )
    • Export scope selects ENRICHED_ONLY (assets enriched by users) or ALL (every asset under the prefix); use GLOSSARIES_ONLY or PRODUCTS_ONLY to scope to those.
    • Qualified name prefix is the starting qualifiedName that selects which assets to export.
  2. Choose how to deliver the export:

    • Download (kept in Atlan, on the Runs tab):

      export = export.export_via("DIRECT")
    • Email (sent as an attachment; addresses are comma-separated):

      export = export.export_via("EMAIL").recipient_email_addresses("jane@example.com,john@example.com")
    • Object storage (upload to S3, GCS, or ADLS). Provide the credential and target connection, then use CLOUD delivery. The raw secret is vaulted server-side before the run:

      export = (
      export.s3(username="••••••", password="••••••", region="us-east-1", s3_bucket="my-bucket")
      .connection(name="my-export-target", admin_users=["jdoe"])
      .export_via("CLOUD")
      )
      # Use .gcs(...) or .adls(...) for Google Cloud Storage or Azure Data Lake Storage.

Run app workflow

Submit the run with a unique name:

Run the export
response = export.run(name="my asset export")
print(response.slug, response.run_id)

.run(...) creates the workflow and submits a run; use .create(...) to create it without running.

run is create-or-reuse by name

If a workflow with the same name already exists, .run(...) returns the existing one without submitting a new run, so run_id is None. Use a unique name each time to force a fresh run.

Validate results

After the run starts:

  • Download: open the app's Runs tab in Atlan and download the generated file from the completed run.
  • Email: check the recipient inboxes for the export attachment.
  • Object storage: confirm the file was uploaded to the target bucket.

To check run status programmatically, pass response.run_id to client.app.get_run(...).

Need help

If the app isn't available on your tenant or a run fails, contact Atlan Support by submitting a request.

See also