> ISPO SDK documentation. [HTML](https://ispo.ai/docs/interfaces/core.EntityGrant.html) · [Documentation index](https://ispo.ai/docs/llms.txt)

# Interface EntityGrant

```typescript
interface EntityGrant {
    constraints?: {
        expiresAt?: string;
        fields?: string[];
        requiresUserConfirmation?: boolean;
        where?: EntityJsonObject;
    };
    createdAt: string;
    createdBy: Principal;
    entityId?: string;
    id: string;
    permissions: EntityOperation[];
    revokedAt?: string;
    revokedBy?: Principal;
    subject: Principal;
    type?: string;
}
```

Types: [constraints](#constraints), [EntityJsonObject](../types/core.Supporting_types.EntityJsonObject.md), [createdAt](#createdat), [createdBy](#createdby), [Principal](../types/core.Supporting_types.Principal.md), [entityId](#entityid), [id](#id), [permissions](#permissions), [EntityOperation](../types/core.EntityOperation.md), [revokedAt](#revokedat), [revokedBy](#revokedby), [subject](#subject), [type](#type)

#### Hierarchy

*   [EntityGrantInput](core.EntityGrantInput.md)
    *   EntityGrant

##### Index

### <a id="properties"></a>Properties

[constraints?](#constraints) [createdAt](#createdat) [createdBy](#createdby) [entityId?](#entityid) [id](#id) [permissions](#permissions) [revokedAt?](#revokedat) [revokedBy?](#revokedby) [subject](#subject) [type?](#type)

## <a id="properties-1"></a>Properties

### <a id="constraints"></a>`Optional`constraints

```typescript
constraints?: {
    expiresAt?: string;
    fields?: string[];
    requiresUserConfirmation?: boolean;
    where?: EntityJsonObject;
}
```

Types: [EntityJsonObject](../types/core.Supporting_types.EntityJsonObject.md)

Inherited from [EntityGrantInput](core.EntityGrantInput.md).[constraints](core.EntityGrantInput.md#constraints)

### <a id="createdat"></a>createdAt

```typescript
createdAt: string
```

### <a id="createdby"></a>createdBy

```typescript
createdBy: Principal
```

Types: [Principal](../types/core.Supporting_types.Principal.md)

### <a id="entityid"></a>`Optional`entityId

```typescript
entityId?: string
```

Inherited from [EntityGrantInput](core.EntityGrantInput.md).[entityId](core.EntityGrantInput.md#entityid)

### <a id="id"></a>id

```typescript
id: string
```

### <a id="permissions"></a>permissions

```typescript
permissions: EntityOperation[]
```

Types: [EntityOperation](../types/core.EntityOperation.md)

Inherited from [EntityGrantInput](core.EntityGrantInput.md).[permissions](core.EntityGrantInput.md#permissions)

### <a id="revokedat"></a>`Optional`revokedAt

```typescript
revokedAt?: string
```

### <a id="revokedby"></a>`Optional`revokedBy

```typescript
revokedBy?: Principal
```

Types: [Principal](../types/core.Supporting_types.Principal.md)

### <a id="subject"></a>subject

```typescript
subject: Principal
```

Types: [Principal](../types/core.Supporting_types.Principal.md)

Inherited from [EntityGrantInput](core.EntityGrantInput.md).[subject](core.EntityGrantInput.md#subject)

### <a id="type"></a>`Optional`type

```typescript
type?: string
```

Inherited from [EntityGrantInput](core.EntityGrantInput.md).[type](core.EntityGrantInput.md#type)
