Skip to content

ACL

albert.resources.acls

AccessControlLevel

Bases: str, Enum

Access control levels you can grant users.

Attributes:

Name Type Description
PROJECT_OWNER
PROJECT_EDITOR
PROJECT_VIEWER
PROJECT_ALL_TASKS
PROJECT_STRICT_VIEWER
PROJECT_PROPERTY_TASKS
INVENTORY_OWNER
INVENTORY_VIEWER
CUSTOM_TEMPLATE_OWNER
CUSTOM_TEMPLATE_VIEWER
CAS_FULL_ACCESS

PROJECT_OWNER

PROJECT_OWNER = 'ProjectOwner'

PROJECT_EDITOR

PROJECT_EDITOR = 'ProjectEditor'

PROJECT_VIEWER

PROJECT_VIEWER = 'ProjectViewer'

PROJECT_ALL_TASKS

PROJECT_ALL_TASKS = 'ProjectAllTask'

PROJECT_STRICT_VIEWER

PROJECT_STRICT_VIEWER = 'ProjectStrictViewer'

PROJECT_PROPERTY_TASKS

PROJECT_PROPERTY_TASKS = 'ProjectPropertyTask'

INVENTORY_OWNER

INVENTORY_OWNER = 'InventoryOwner'

INVENTORY_VIEWER

INVENTORY_VIEWER = 'InventoryViewer'

CUSTOM_TEMPLATE_OWNER

CUSTOM_TEMPLATE_OWNER = 'CustomTemplateOwner'

CUSTOM_TEMPLATE_VIEWER

CUSTOM_TEMPLATE_VIEWER = 'CustomTemplateViewer'

CAS_FULL_ACCESS

CAS_FULL_ACCESS = 'CASFullAccess'

ACL

Bases: BaseAlbertModel

A single access rule for a user.

Show JSON schema:
{
  "$defs": {
    "AccessControlLevel": {
      "description": "Access control levels you can grant users.",
      "enum": [
        "ProjectOwner",
        "ProjectEditor",
        "ProjectViewer",
        "ProjectAllTask",
        "ProjectStrictViewer",
        "ProjectPropertyTask",
        "InventoryOwner",
        "InventoryViewer",
        "CustomTemplateOwner",
        "CustomTemplateViewer",
        "CASFullAccess"
      ],
      "title": "AccessControlLevel",
      "type": "string"
    }
  },
  "description": "A single access rule for a user.",
  "properties": {
    "id": {
      "description": "The id of the user for which this ACL applies",
      "title": "Id",
      "type": "string"
    },
    "fgc": {
      "anyOf": [
        {
          "$ref": "#/$defs/AccessControlLevel"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The Fine-Grain Control Level"
    }
  },
  "required": [
    "id"
  ],
  "title": "ACL",
  "type": "object"
}

Fields:

id

id: str

The id of the user for which this ACL applies

fgc

fgc: AccessControlLevel | None = None

The Fine-Grain Control Level

ACLContainer

Bases: BaseResource

Access settings with a default class and a list of rules.

Show JSON schema:
{
  "$defs": {
    "ACL": {
      "description": "A single access rule for a user.",
      "properties": {
        "id": {
          "description": "The id of the user for which this ACL applies",
          "title": "Id",
          "type": "string"
        },
        "fgc": {
          "anyOf": [
            {
              "$ref": "#/$defs/AccessControlLevel"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The Fine-Grain Control Level"
        }
      },
      "required": [
        "id"
      ],
      "title": "ACL",
      "type": "object"
    },
    "AccessControlLevel": {
      "description": "Access control levels you can grant users.",
      "enum": [
        "ProjectOwner",
        "ProjectEditor",
        "ProjectViewer",
        "ProjectAllTask",
        "ProjectStrictViewer",
        "ProjectPropertyTask",
        "InventoryOwner",
        "InventoryViewer",
        "CustomTemplateOwner",
        "CustomTemplateViewer",
        "CASFullAccess"
      ],
      "title": "AccessControlLevel",
      "type": "string"
    },
    "AuditFields": {
      "description": "The audit fields for a resource",
      "properties": {
        "by": {
          "default": null,
          "title": "By",
          "type": "string"
        },
        "byName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Byname"
        },
        "at": {
          "anyOf": [
            {
              "format": "date-time",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "At"
        }
      },
      "title": "AuditFields",
      "type": "object"
    },
    "Status": {
      "description": "The status of a resource.\n\nAttributes\n----------\nACTIVE : str\n    The resource is fully operational and visible in normal operations.\nINACTIVE : str\n    The resource is hidden from normal operations and disabled from use.",
      "enum": [
        "active",
        "inactive"
      ],
      "title": "Status",
      "type": "string"
    }
  },
  "description": "Access settings with a default class and a list of rules.",
  "properties": {
    "status": {
      "anyOf": [
        {
          "$ref": "#/$defs/Status"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The status of the resource, optional."
    },
    "Created": {
      "anyOf": [
        {
          "$ref": "#/$defs/AuditFields"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Audit fields for the creation of the resource, optional."
    },
    "Updated": {
      "anyOf": [
        {
          "$ref": "#/$defs/AuditFields"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Audit fields for the update of the resource, optional."
    },
    "class": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The default access class (for example, \"restricted\" or \"confidential\").",
      "title": "Class"
    },
    "fgclist": {
      "anyOf": [
        {
          "items": {
            "$ref": "#/$defs/ACL"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Specific access rules for users or teams.",
      "title": "Fgclist"
    }
  },
  "title": "ACLContainer",
  "type": "object"
}

Fields:

acl_class

acl_class: str | None = None

The default access class (for example, "restricted" or "confidential").

fgclist

fgclist: list[ACL] | None = None

Specific access rules for users or teams.