Restore columns

POST /api/meta/entity/bulk#restoreColumns

Restore one or more soft-deleted (archived) columns.

The restoration relies on matches being found for the provided qualifiedNames. If the this does not exactly match (case-sensitive) a soft-deleted column's qualifiedName, the request will fail.

Note that the guid is also required to avoid accidentally creating a new column. If the qualifiedName does not match an existing column, and no guid is supplied in the request, then this endpoint will create a new column with the provided details.

Body Required

List of columns to restore.

  • entities array[object] Required

    Instance of a column asset in Atlan, with its detailed information.

    • typeName string Required

      Should always be Column.

    • attributes object Required

      Attributes that can exist in column assets in Atlan.

      • qualifiedName string Required

        Unique name for this column. This should be a concatenation of the parent table's qualifiedName with the name of the column, separated by /.

      • name string Required

        Human-readable name of the column.

      • tableName string | null

        Human-readable name of the table in which this column exists.

      • tableQualifiedName string | null

        Unique name of the table in which this column exists.

      • viewName string | null

        Human-readable name of the view in which this column exists.

      • viewQualifiedName string | null

        Unique name of the view in which this column exists.

      • databaseName string | null Required

        Human-readable name of the database in which this column exists.

      • databaseQualifiedName string | null Required

        Unique name of the database in which this column exists.

      • schemaName string | null Required

        Human-readable name of the schema in which this column exists.

      • schemaQualifiedName string | null Required

        Unique name of the schema in which this column exists.

      • dataType string | null

        Type of the column.

        Values are Address, ANY, AnyType, ARRAY, Base64, BIGINT, BIGINT UNSIGNED, BINARY, BINARY VARYING, BIT, BLOB, BOOL, BOOLEAN, BPCHAR, Byte, CHAR, CHARACTER, CHARACTER VARYING, Combobox, Currency, DataCategoryGroupReference, DATE, DateTime, DATETIME, DECIMAL, dimension, DOUBLE, DOUBLE PRECISION, Email, Encrypted String, ENUM, FLOAT, FLOAT4, FLOAT64, FLOAT8, GEOGRAPHY, GEOMETRY, GEOMETRYCOLLECTION, HLLSKETCH, ID, IMESTAMP_TZ, INT, INT UNSIGNED, INT2, INT4, INT64, INT8, INTEGER, JSON, LINESTRING, Location, LONGBLOB, LONGTEXT, Lookup, Master record, measure, MEDIUMBLOB, MEDIUMINT, MEDIUMINT UNSIGNED, MEDIUMTEXT, MULTILINESTRING, Multipicklist, MULTIPOINT, MULTIPOLYGON, NCHAR, NUMERIC, OBJECT, Percent, Phone, Picklist, POINT, POLYGON, PRIMITIVE_DOUBLE, REAL, Reference, SET, SMALLINT, SMALLINT UNSIGNED, STRING, String, STRUCT, Super, TEXT, Textarea, TIME, TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMPLTZ, TIMESTAMPNTZ, TIMESTAMPTZ, TIMETZ, TINYBLOB, TINYINT, TINYTEXT, URL, VARBINARY, VARBYTE, VARCHAR, VARIANT, NUMBER, or null.

      • subDataType string | null
      • order integer | null

        Order in which the column appears in the table (starting at 1).

      • isPartition boolean | null
      • partitionOrder integer | null
      • isClustered boolean | null
      • isPrimary boolean | null

        When true this column is the primary key for the table.

      • isForeign boolean | null

        When true this column is a foreign key to another table.

      • isIndexed boolean | null

        When true this column is indexed in the database.

      • isSort boolean | null
      • isDist boolean | null
      • isPinned boolean | null
      • precision integer | null
      • defaultValue string | null
      • isNullable boolean | null

        When true the values in this column can be null.

      • numericScale integer | null
      • maxLength integer | null

        Maximum length of a value in this column.

      • validations string | null
    • relationshipAttributes object Required

      Describes the parent container for the column. One and only one of these objects must be provided to create a column.

      • Details to use within an asset when referring to a materialized view.

        • typeName string

          Should always be MaterialisedView.

        • guid string | null

          Unique identifier of the related materialized view. If the uniqueAttributes are not provided, this must be provided.

        • uniqueAttributes object | null

          Attribute(s) that uniquely identify the related materialized view. If the guid is not provided, these must be provided.

      • table object

        Details to use within an asset when referring to a table.

        • typeName string

          Should always be Table.

        • guid string | null

          Unique identifier of the related table. If the uniqueAttributes are not provided, this must be provided.

        • uniqueAttributes object | null

          Attribute(s) that uniquely identify the related table. If the guid is not provided, these must be provided.

      • view object

        Details to use within an asset when referring to a view.

        • typeName string

          Should always be View.

        • guid string | null

          Unique identifier of the related view. If the uniqueAttributes are not provided, this must be provided.

        • uniqueAttributes object | null

          Attribute(s) that uniquely identify the related view. If the guid is not provided, these must be provided.

Responses

  • 200 object

    Columns that were successfully restored (undeleted).

    • mutatedEntities object | null

      Columns that were restored.

      • UPDATE array[object]

        Instance of a column in Atlan, with its detailed response-specific information.

        • typeName string

          Should always be Column.

        • attributes object | null

          Attributes that can exist in column assets in Atlan.

          • Unique name for this column. This should be a concatenation of the parent table's qualifiedName with the name of the column, separated by /.

          • name string

            Human-readable name of the column.

          • displayName string | null

            Name used for display purposes (in user interfaces).

          • description string | null

            Description of the asset, as crawled from a source.

          • userDescription string | null

            Description of the asset, as provided by a user. If present, this will be used for the description in user interfaces. If not present, the description will be used.

          • tenantId string | null

            Name of the Atlan workspace in which the table exists.

          • certificateStatus string | null

            Status of the asset's certification.

            Values are VERIFIED, DRAFT, DEPRECATED, or null.

          • Human-readable descriptive message that can optionally be submitted when the certificateStatus is changed.

          • announcementTitle string | null

            Brief title for the announcement on this asset. Required when announcementType is specified.

          • announcementMessage string | null

            Detailed message to include in the announcement on this asset.

          • announcementType string | null

            Type of announcement on the asset.

            Values are information, warning, issue, or null.

          • ownerUsers array[string] | null

            List of users who own the asset.

          • ownerGroups array[string] | null

            List of groups who own the asset.

          • adminUsers array[string] | null

            List of users who administer the asset. (This is only used for Connection assets.)

          • adminGroups array[string] | null

            List of groups who administer the asset. (This is only used for Connection assets.)

          • viewerUsers array[string] | null
          • viewerGroups array[string] | null
          • connectorName string | null

            Name of the connector through which this asset is accessible.

          • connectionName string | null Deprecated

            Unused.

          • Unique name of the connection through which this asset is accessible.

          • isDiscoverable boolean | null
          • isEditable boolean | null
          • subType object | null
          • viewScore number | null
          • popularityScore number | null
          • sourceOwners array[string] | null
          • sourceURL string | null
          • Name of the crawler that last synchronized this asset.

          • lastSyncRunAt integer | null

            Time (epoch) at which the table was last crawled, in milliseconds.

          • lastSyncRun string | null

            Name of the last run of the crawler that last synchronized this asset.

          • Name of the user who last updated the certificateStatus.

          • certificateUpdatedAt integer | null

            Time (epoch) at which the certificateStatus was last updated, in milliseconds.

          • Time (epoch) at which the announcement was last updated, in milliseconds.

          • User who last updated the announcement.

          • sourceCreatedBy string | null
          • sourceCreatedAt integer | null
          • sourceUpdatedAt integer | null
          • sourceUpdatedBy string | null
          • tableName string | null

            Human-readable name of the table in which this column exists.

          • tableQualifiedName string | null

            Unique name of the table in which this column exists.

          • viewName string | null

            Human-readable name of the view in which this column exists.

          • viewQualifiedName string | null

            Unique name of the view in which this column exists.

          • databaseName string | null

            Human-readable name of the database in which this column exists.

          • Unique name of the database in which this column exists.

          • schemaName string | null

            Human-readable name of the schema in which this column exists.

          • schemaQualifiedName string | null

            Unique name of the schema in which this column exists.

          • dataType string | null

            Type of the column.

            Values are Address, ANY, AnyType, ARRAY, Base64, BIGINT, BIGINT UNSIGNED, BINARY, BINARY VARYING, BIT, BLOB, BOOL, BOOLEAN, BPCHAR, Byte, CHAR, CHARACTER, CHARACTER VARYING, Combobox, Currency, DataCategoryGroupReference, DATE, DateTime, DATETIME, DECIMAL, dimension, DOUBLE, DOUBLE PRECISION, Email, Encrypted String, ENUM, FLOAT, FLOAT4, FLOAT64, FLOAT8, GEOGRAPHY, GEOMETRY, GEOMETRYCOLLECTION, HLLSKETCH, ID, IMESTAMP_TZ, INT, INT UNSIGNED, INT2, INT4, INT64, INT8, INTEGER, JSON, LINESTRING, Location, LONGBLOB, LONGTEXT, Lookup, Master record, measure, MEDIUMBLOB, MEDIUMINT, MEDIUMINT UNSIGNED, MEDIUMTEXT, MULTILINESTRING, Multipicklist, MULTIPOINT, MULTIPOLYGON, NCHAR, NUMERIC, OBJECT, Percent, Phone, Picklist, POINT, POLYGON, PRIMITIVE_DOUBLE, REAL, Reference, SET, SMALLINT, SMALLINT UNSIGNED, STRING, String, STRUCT, Super, TEXT, Textarea, TIME, TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMPLTZ, TIMESTAMPNTZ, TIMESTAMPTZ, TIMETZ, TINYBLOB, TINYINT, TINYTEXT, URL, VARBINARY, VARBYTE, VARCHAR, VARIANT, NUMBER, or null.

          • subDataType string | null
          • order integer | null

            Order in which the column appears in the table (starting at 1).

          • isPartition boolean | null
          • partitionOrder integer | null
          • isClustered boolean | null
          • isPrimary boolean | null

            When true this column is the primary key for the table.

          • isForeign boolean | null

            When true this column is a foreign key to another table.

          • isIndexed boolean | null

            When true this column is indexed in the database.

          • isSort boolean | null
          • isDist boolean | null
          • isPinned boolean | null
          • precision integer | null
          • defaultValue string | null
          • isNullable boolean | null

            When true the values in this column can be null.

          • numericScale integer | null
          • maxLength integer | null

            Maximum length of a value in this column.

          • validations string | null
          • pinnedBy string | null
          • pinnedAt integer | null
        • classifications array[object] | null

          Instance of a classification in Atlan, with its detailed information.

          • typeName string

            Name of the classification. Note that this is the static-hashed unique name of the classification, not the human-readable displayName.

          • Unique identifier of the entity to which this classification is attached.

          • propagate boolean | null

            Whether to propagate this classification to other entities related to the entity to which the classification is attached.

          • Whether to remove this classification from other entities to which it has been propagated when the classification is removed from this entity.

          • entityStatus string | null

            Status of the entity to which this classification is attached.

            Values are ACTIVE or DELETED.

        • displayText string | null

          Human-readable name of the entity.

        • guid string

          Unique identifier of the entity instance.

        • isIncomplete boolean | null

          Default value is false.

        • createdBy string | null

          Username of the user who created the object.

        • updatedBy string | null

          Username of the user who last updated the object.

        • createTime integer | null

          Time (epoch) at which this object was created, in milliseconds.

        • updateTime integer | null

          Time (epoch) at which this object was last updated, in milliseconds.

        • version integer | null

          Version of this object.

        • classificationNames array[string] | null

          List of classifications for this entity. Note that these are the internal hashed names used in Atlan, not the displayText of the classification.

        • labels array[string] | null

          Internal use only.

        • status string

          Status of the entity, either ACTIVE or DELETED.

          Values are ACTIVE or DELETED.

        • Map of the relationships to this column.

          • readme object

            Details to use within an asset when referring to a readme.

            • typeName string

              Should always be Readme.

            • guid string | null

              Unique identifier of the related readme. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related readme. If the guid is not provided, these must be provided.

          • meanings array[object] | null

            Details to use within an asset when referring to a term.

            • typeName string

              Should always be AtlasnGlossaryTerm.

            • guid string | null

              Unique identifier of the related term. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related term. If the guid is not provided, these must be provided.

              • Unique name of the related term. Note that in Atlan this unique name is a hashed value, not the name you see in the UI.

          • inputToProcesses array[object] | null

            Details to use within an asset when referring to a process.

            • typeName string

              Should either be Process or a subtype of Process.

              Values are Process, ColumnProcess, or BIProcess.

            • guid string | null

              Unique identifier of the related process. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related process. If the guid is not provided, these must be provided.

          • outputFromProcesses array[object] | null

            Details to use within an asset when referring to a process.

            • typeName string

              Should either be Process or a subtype of Process.

              Values are Process, ColumnProcess, or BIProcess.

            • guid string | null

              Unique identifier of the related process. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related process. If the guid is not provided, these must be provided.

          • Details to use within an asset when referring to a materialized view.

            • typeName string

              Should always be MaterialisedView.

            • guid string | null

              Unique identifier of the related materialized view. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related materialized view. If the guid is not provided, these must be provided.

          • table object

            Details to use within an asset when referring to a table.

            • typeName string

              Should always be Table.

            • guid string | null

              Unique identifier of the related table. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related table. If the guid is not provided, these must be provided.

          • view object

            Details to use within an asset when referring to a view.

            • typeName string

              Should always be View.

            • guid string | null

              Unique identifier of the related view. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related view. If the guid is not provided, these must be provided.

          • queries array[object] | null

            Details to use within an asset when referring to a query.

            • typeName string

              Should always be Query.

            • guid string | null

              Unique identifier of the related query. If the uniqueAttributes are not provided, this must be provided.

            • uniqueAttributes object | null

              Attribute(s) that uniquely identify the related query. If the guid is not provided, these must be provided.

    • Map of assigned unique identifiers for any created columns (should be empty for restored columns).

  • 404 object

    Column could not be found by the qualifiedName or guid provided.

    • Unique code for the type of error that occurred.

    • Human-readable description of the error that occurred.

    • GUID that could not be found

POST /api/meta/entity/bulk#restoreColumns
curl \
 -X POST https://tenant.atlan.com/api/meta/entity/bulk#restoreColumns \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -H "Content-Type: application/json" \
 -d '{"entities":[{"typeName":"Column","attributes":{"name":"id","qualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default/customer/id","connectorName":"mongodb","tableName":"customer","tableQualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default/customer","schemaName":"default","schemaQualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default","databaseName":"test_db","databaseQualifiedName":"default/mongodb/mongodb.atlan.com/test_db","connectionQualifiedName":"default/mongodb/mongodb.atlan.com"},"relationshipAttributes":{"table":{"typeName":"Table","uniqueAttributes":{"qualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default/customer"}}},"guid":"dc14ffca-bf43-4731-b641-51408c4d892c","status":"ACTIVE"},{"typeName":"Column","attributes":{"name":"name","qualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default/customer_view/name","connectorName":"mongodb","viewName":"customer_view","viewQualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default/customer_view","schemaName":"default","schemaQualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default","databaseName":"test_db","databaseQualifiedName":"default/mongodb/mongodb.atlan.com/test_db","connectionQualifiedName":"default/mongodb/mongodb.atlan.com"},"relationshipAttributes":{"view":{"typeName":"View","uniqueAttributes":{"qualifiedName":"default/mongodb/mongodb.atlan.com/test_db/default/customer_view"}}},"guid":"cde58784-792d-42d4-a1b7-70428b708406","status":"ACTIVE"}]}'
Request example
{
  "entities": [
    {
      "typeName": "Column",
      "attributes": {
        "name": "id",
        "qualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer/id",
        "connectorName": "mongodb",
        "tableName": "customer",
        "tableQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer",
        "schemaName": "default",
        "schemaQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default",
        "databaseName": "test_db",
        "databaseQualifiedName": "default/mongodb/mongodb.atlan.com/test_db",
        "connectionQualifiedName": "default/mongodb/mongodb.atlan.com"
      },
      "relationshipAttributes": {
        "table": {
          "typeName": "Table",
          "uniqueAttributes": {
            "qualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer"
          }
        }
      },
      "guid": "dc14ffca-bf43-4731-b641-51408c4d892c",
      "status": "ACTIVE"
    },
    {
      "typeName": "Column",
      "attributes": {
        "name": "name",
        "qualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer_view/name",
        "connectorName": "mongodb",
        "viewName": "customer_view",
        "viewQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer_view",
        "schemaName": "default",
        "schemaQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default",
        "databaseName": "test_db",
        "databaseQualifiedName": "default/mongodb/mongodb.atlan.com/test_db",
        "connectionQualifiedName": "default/mongodb/mongodb.atlan.com"
      },
      "relationshipAttributes": {
        "view": {
          "typeName": "View",
          "uniqueAttributes": {
            "qualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer_view"
          }
        }
      },
      "guid": "cde58784-792d-42d4-a1b7-70428b708406",
      "status": "ACTIVE"
    }
  ]
}
Response example (200)
{
  "mutatedEntities": {
    "UPDATE": [
      {
        "typeName": "Column",
        "attributes": {
          "popularityScore": 1.17549435e-38,
          "sourceCreatedAt": 0,
          "viewerUsers": [],
          "viewScore": 1.17549435e-38,
          "lastSyncRunAt": 0,
          "adminGroups": [],
          "qualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer/id",
          "__hasLineage": false,
          "adminUsers": [],
          "ownerGroups\"": [],
          "isEditable": true,
          "sourceUpdatedAt": 0,
          "announcementUpdatedAt": 0,
          "name": "id",
          "certificateUpdatedAt": 0,
          "connectorName": "mongodb",
          "tableName": "customer",
          "tableQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer",
          "schemaName": "default",
          "schemaQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default",
          "databaseName": "test_db",
          "databaseQualifiedName": "default/mongodb/mongodb.atlan.com/test_db",
          "connectionQualifiedName": "default/mongodb/mongodb.atlan.com",
          "isDiscoverable": true,
          "viewerGroups": [],
          "ownerUsers": []
        },
        "guid": "dc14ffca-bf43-4731-b641-51408c4d892c",
        "status": "ACTIVE",
        "displayText": "default",
        "classificationNames": [],
        "classifications": [],
        "meaningNames": [],
        "meanings": [],
        "isIncomplete": false,
        "labels": [],
        "createdBy": "service-account-apikey-bea1e1d1-e4e7-465e-8adf-7c61c227a59b",
        "updatedBy": "service-account-apikey-bea1e1d1-e4e7-465e-8adf-7c61c227a59b",
        "createTime": 1652795647900,
        "updateTime": 1652795647900
      },
      {
        "typeName": "Column",
        "attributes": {
          "popularityScore": 1.17549435e-38,
          "sourceCreatedAt": 0,
          "viewerUsers": [],
          "viewScore": 1.17549435e-38,
          "lastSyncRunAt": 0,
          "adminGroups": [],
          "qualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer_view/name",
          "__hasLineage": false,
          "adminUsers": [],
          "ownerGroups\"": [],
          "isEditable": true,
          "sourceUpdatedAt": 0,
          "announcementUpdatedAt": 0,
          "name": "name",
          "certificateUpdatedAt": 0,
          "connectorName": "mongodb",
          "viewName": "customer_view",
          "viewQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default/customer_view",
          "schemaName": "default",
          "schemaQualifiedName": "default/mongodb/mongodb.atlan.com/test_db/default",
          "databaseName": "test_db",
          "databaseQualifiedName": "default/mongodb/mongodb.atlan.com/test_db",
          "connectionQualifiedName": "default/mongodb/mongodb.atlan.com",
          "isDiscoverable": true,
          "viewerGroups": [],
          "ownerUsers": []
        },
        "guid": "cde58784-792d-42d4-a1b7-70428b708406",
        "status": "ACTIVE",
        "displayText": "default",
        "classificationNames": [],
        "classifications": [],
        "meaningNames": [],
        "meanings": [],
        "isIncomplete": false,
        "labels": [],
        "createdBy": "service-account-apikey-bea1e1d1-e4e7-465e-8adf-7c61c227a59b",
        "updatedBy": "service-account-apikey-bea1e1d1-e4e7-465e-8adf-7c61c227a59b",
        "createTime": 1652795647900,
        "updateTime": 1652795647900
      }
    ]
  },
  "guidAssignments": {}
}
Response example (404)
{
  "errorCode": "ATLAS-404-00-00A",
  "errorMessage": "Referenced entity cde58784-792d-42d4-a1b7-70428b708406 is not found",
  "entityGuid": "cde58784-792d-42d4-a1b7-70428b708406"
}