Restore categories

POST /api/meta/entity/bulk#restoreCategories

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

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

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

Body Required

List of categories to restore.

  • entities array[object] Required

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

    • typeName string Required

      Should always be AtlasGlossaryCategory.

    • attributes object Required

      Attributes that can exist in category assets in Atlan.

      • qualifiedName string Required

        Unique name for this category. During creation this can be a readable name, but it will be replaced by a uniquely hashed name generated by Atlan. This is to ensure consistency even if the name of the category changes.

      • name string Required

        Human-readable name of the category.

      • userDescription string | null

        Meaningful explanation of the category.

    • relationshipAttributes object | null Required

      Map of the relationships to this category.

      • anchor object Required

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

        • typeName string

          Should always be AtlasGlossary.

        • guid string | null

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

        • uniqueAttributes object | null

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

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

      • Details to use within an asset when referring to a category.

        • typeName string

          Should always be AtlasGlossaryCategory.

        • guid string | null

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

        • uniqueAttributes object | null

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

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

Responses

  • 200 object

    Categories that were successfully restored (undeleted).

    • mutatedEntities object | null

      Categories that were restored.

      • UPDATE array[object]

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

        • typeName string

          Should always be AtlasGlossaryCategory.

        • attributes object | null

          Attributes that can exist in category assets in Atlan.

        • 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 category.

          • 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.

          • anchor object

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

            • typeName string

              Should always be AtlasGlossary.

            • guid string | null

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

            • uniqueAttributes object | null

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

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

          • Details to use within an asset when referring to a category.

            • typeName string

              Should always be AtlasGlossaryCategory.

            • guid string | null

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

            • uniqueAttributes object | null

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

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

          • terms 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.

          • childrenCategories array[object] | null

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

            • typeName string

              Should always be AtlasGlossaryCategory.

            • guid string | null

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

            • uniqueAttributes object | null

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

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

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

  • 404 object

    Category 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#restoreCategories
curl \
 -X POST https://tenant.atlan.com/api/meta/entity/bulk#restoreCategories \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -H "Content-Type: application/json" \
 -d '{"entities":[{"typeName":"AtlasGlossaryCategory","attributes":{"qualifiedName":"Monthly@kRCbrmy1phqOyEQBade9H","name":"Monthly"},"relationshipAttributes":{"anchor":{"typeName":"AtlasGlossary","guid":"b1e07ba1-33b3-4e2c-aa50-80c19846b5fe"}},"guid":"6c7986ef-b1cf-46b9-a9bb-4e6bf5464780","status":"ACTIVE"}]}'
Request example
{
  "entities": [
    {
      "typeName": "AtlasGlossaryCategory",
      "attributes": {
        "qualifiedName": "Monthly@kRCbrmy1phqOyEQBade9H",
        "name": "Monthly"
      },
      "relationshipAttributes": {
        "anchor": {
          "typeName": "AtlasGlossary",
          "guid": "b1e07ba1-33b3-4e2c-aa50-80c19846b5fe"
        }
      },
      "guid": "6c7986ef-b1cf-46b9-a9bb-4e6bf5464780",
      "status": "ACTIVE"
    }
  ]
}
Response example (200)
{
  "mutatedEntities": {
    "UPDATE": [
      {
        "typeName": "AtlasGlossaryCategory",
        "attributes": {
          "popularityScore": 1.17549435e-38,
          "viewerUsers": [],
          "sourceCreatedAt": 0,
          "viewScore": 1.17549435e-38,
          "lastSyncRunAt": 0,
          "adminRoles": [],
          "adminGroups": [],
          "qualifiedName": "dA710FXqkSs5a0LPHnxn1@kRCbrmy1phqOyEQBade9H",
          "__hasLineage": false,
          "adminUsers": [],
          "ownerGroups": [],
          "isEditable": true,
          "sourceUpdatedAt": 0,
          "announcementUpdatedAt": 0,
          "name": "Monthly",
          "certificateUpdatedAt": 0,
          "isDiscoverable": true,
          "viewerGroups": [],
          "ownerUsers": []
        },
        "guid": "6c7986ef-b1cf-46b9-a9bb-4e6bf5464780",
        "status": "ACTIVE",
        "displayText": "Monthly",
        "classificationNames": [],
        "classifications": [],
        "meaningNames": [],
        "meanings": [],
        "isIncomplete": false,
        "labels": [],
        "createdBy": "service-account-apikey-e8d1f0bd-600e-4a8a-9248-b7c9aa1ef8c3",
        "updatedBy": "service-account-apikey-e8d1f0bd-600e-4a8a-9248-b7c9aa1ef8c3",
        "createTime": 1655140843145,
        "updateTime": 1655140843145
      }
    ]
  },
  "guidAssignments": {}
}
Response example (404)
{
  "errorCode": "ATLAS-404-00-00A",
  "errorMessage": "Referenced entity 6c7986ef-b1cf-46b9-a9bb-4e6bf5464780 is not found",
  "entityGuid": "6c7986ef-b1cf-46b9-a9bb-4e6bf5464780"
}