Skip to main content
Version: Current

Permissions Types

  • ActionKinds

    The possible types of actions that can be performed on resources.

    A ActionKinds can be one of the following values:

    • "read"
    • "create"
    • "update"
    • "delete"
    • "assign"
    • "unassign"
    • "increment"
    • "count"
    • "list"
    • "grantPermission"
    • "revokePermission"
    • "grant"
    • "revoke"
    • "sendAction"
    • "updateData"
    • "run"
    • "send"
    • "subscribe"
    • "unsubscribe"
    • "listSubscriptions"
  • AvailablePermissions

    The possible types of permissions that can be added to policies.

  • DataActionKinds

    The possible types of actions that can be performed on data resources.

    A DataActionKinds can be one of the following values:

    • "read"
    • "create"
    • "update"
    • "delete"
    • "list"
  • DataPermission

    Defines an interface that describes the common options for all permissions that affect data records.

    Members

    • action DataActionKinds

      The action th at is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "data"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • EventActionKinds

    The possible types of actions that can be performed on event resources.

    A EventActionKinds can be one of the following values:

    • "increment"
    • "count"
    • "update"
    • "list"
  • EventPermission

    Defines an interface that describes the common options for all permissions that affect event records.

    Members

    • action EventActionKinds

      The action th at is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "event"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • FileActionKinds

    The possible types of actions that can be performed on file resources.

    A FileActionKinds can be one of the following values:

    • "read"
    • "create"
    • "update"
    • "delete"
    • "list"
  • FilePermission

    Defines an interface that describes the common options for all permissions that affect file records.

    Members

    • action FileActionKinds

      The action th at is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options FilePermissionOptions

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "file"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • FilePermissionOptions

    Options for file permissions.

    Members

    • allowedMimeTypes? (true | string[])

      The list of allowed file MIME types. If true, then all file types are allowed. If an array of strings, then only MIME types that are specified are allowed.

    • maxFileSizeInBytes? number

      The maximum allowed file size in bytes. Defaults to Infinity.

  • HumeActionKinds

    The possible types of actions that can be performed on ai.hume resources.

  • HumePermission

    Defines an interface that describes common options for all permissions that affect ai.hume resources.

    Members

    • action "create"

      The action that is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "ai.hume"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • InstActionKinds

    The possible types of actions that can be performed on inst resources.

    A InstActionKinds can be one of the following values:

    • "create"
    • "read"
    • "update"
    • "updateData"
    • "delete"
    • "list"
    • "sendAction"
  • InstPermission

    Defines an interface that describes common options for all permissions that affect insts.

    Members

    • action InstActionKinds

      The action th at is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "inst"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • LoomActionKinds

    The possible types of actions that can be performed on loom resources.

  • LoomPermission

    Defines an interface that describes common options for all permissions that affect loom resources.

    Members

    • action "create"

      The action that is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "loom"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • MarkerActionKinds

    The possible types of actions that can be performed on marker resources.

    A MarkerActionKinds can be one of the following values:

    • "assign"
    • "unassign"
    • "grantPermission"
    • "revokePermission"
    • "read"
  • MarkerPermission

    Defines an interface that represents a permission that grants access to resources with a marker.

    Members

    • action ActionKinds

      The kind of the actions that the subject is allowed to perform. Null if the subject is allowed to perform any action.

    • expireTimeMs number

      The time that the permission expires. Null if the permission never expires.

    • id string

      The ID of the permission.

    • marker string

      The marker that the permission applies to.

    • options PermissionOptions

      The options for the permission assignment.

    • recordName string

      The name of the record.

    • resourceKind ResourceKinds

      The kind of the resource. Null if the permission applies to all resources.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject.

    • userId string

      The ID of the user that the assignment grants permission to. Null if the subject type is not "user".

  • NotificationActionKinds

    The possible types of actions that can be performed on notification resources.

    A NotificationActionKinds can be one of the following values:

    • "create"
    • "read"
    • "update"
    • "delete"
    • "list"
    • "send"
    • "subscribe"
    • "unsubscribe"
    • "listSubscriptions"
  • NotificationPermission

    Defines an interface that describes common options for all permissions that affect notification resources.

    Members

    • action NotificationActionKinds

      The action that is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "notification"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • ResourceKinds

    The possible types of resources that can be affected by permissions.

    A ResourceKinds can be one of the following values:

    • "data"
    • "file"
    • "event"
    • "marker"
    • "role"
    • "inst"
    • "webhook"
    • "notification"
    • "loom"
    • "ai.sloyd"
    • "ai.hume"
  • ResourcePermission

    Defines an interface that represents a permission that grants access to a single resource.

    Members

    • action ActionKinds

      The kind of the actions that the subject is allowed to perform. Null if the subject is allowed to perform any action.

    • expireTimeMs number

      The time that the permission expires. Null if the permission never expires.

    • id string

      The ID of the permission.

    • options PermissionOptions

      The options for the permission assignment.

    • recordName string

      The name of the record.

    • resourceId string

      The ID of the resource.

    • resourceKind ResourceKinds

      The kind of the resource.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject.

    • userId string

      The ID of the user that the assignment grants permission to. Null if the subject type is not "user".

  • RoleActionKinds

    The possible types of actions that can be performed on roles resources.

    A RoleActionKinds can be one of the following values:

    • "grant"
    • "revoke"
    • "read"
    • "update"
    • "list"
  • RolePermission

    Defines an interface that describes the common options for all permissions that affect roles.

    Members

    • action RoleActionKinds

      The action th at is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options RolePermissionOptions

      The options for the permission.

    • resourceId string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "role"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • RolePermissionOptions

    Options for role permissions.

    Members

    • maxDurationMs? number

      The maximum lifetime that the role can be granted for in miliseconds. If not specified, then the role can be granted for an infinite amount of time.

  • SloydActionKinds

    The possible types of actions that can be performed on ai.sloyd resources.

  • SloydPermission

    Defines an interface that describes common options for all permissions that affect ai.sloyd resources.

    Members

    • action "create"

      The action that is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "ai.sloyd"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.

  • SubjectType

    The possible types of subjects that can be affected by permissions.

    • "user" - The permission is for a user.
    • "inst" - The permission is for an inst.
    • "role" - The permission is for a role.

    A SubjectType can be one of the following values:

    • "user"
    • "inst"
    • "role"
  • WebhookActionKinds

    The possible types of actions that can be performed on webhook resources.

    A WebhookActionKinds can be one of the following values:

    • "create"
    • "read"
    • "update"
    • "delete"
    • "list"
    • "run"
  • WebhookPermission

    Defines an interface that describes common options for all permissions that affect webhook resources.

    Members

    • action WebhookActionKinds

      The action that is allowed. If null, then all actions are allowed.

    • expireTimeMs number

      The unix time in miliseconds that the permission will expire at. If null, then the permission does not expire.

    • marker? string

      The marker that the permission is for. If null or undefined, then the permission is for a specific resource instead of a marker.

    • options object

      The options for the permission.

    • resourceId? string

      The ID of the resource that is allowed. If null, then all resources are allowed.

    • resourceKind "webhook"

      The kind of the permission.

    • subjectId string

      The ID of the subject.

    • subjectType SubjectType

      The type of the subject that the permission is for.

      "user" - The permission is for a user. "inst" - The permission is for an inst. "role" - The permission is for a role.