# api\_entities\_CheckpointSchedule.CheckpointSchedule

[@polymeshassociation/polymesh-sdk](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes) / [Modules](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/modules) / [api/entities/CheckpointSchedule](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/modules-1/api_entities_checkpointschedule) / CheckpointSchedule

## Class: CheckpointSchedule

[api/entities/CheckpointSchedule](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/modules-1/api_entities_checkpointschedule).CheckpointSchedule

Represents a Checkpoint Schedule for an Asset. Schedules can be set up to create Checkpoints at regular intervals

### Hierarchy

* [`Entity`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity)<[`UniqueIdentifiers`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/interfaces/api_entities_checkpointschedule.uniqueidentifiers), `HumanReadable`>

  ↳ **`CheckpointSchedule`**

### Table of contents

#### Properties

* [asset](#asset)
* [complexity](#complexity)
* [expiryDate](#expirydate)
* [id](#id)
* [period](#period)
* [start](#start)
* [uuid](#uuid)

#### Methods

* [details](#details)
* [exists](#exists)
* [getCheckpoints](#getcheckpoints)
* [isEqual](#isequal)
* [toHuman](#tohuman)
* [generateUuid](#generateuuid)
* [unserialize](#unserialize)

### Properties

#### asset

• **asset**: [`Asset`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_asset.asset)

Asset for which Checkpoints are scheduled

**Defined in**

[api/entities/CheckpointSchedule/index.ts:65](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L65)

***

#### complexity

• **complexity**: `BigNumber`

abstract measure of the complexity of this Schedule. Shorter periods translate into more complexity

**Defined in**

[api/entities/CheckpointSchedule/index.ts:87](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L87)

***

#### expiryDate

• **expiryDate**: `null` | `Date`

date at which the last Checkpoint will be created with this Schedule. A null value means that this Schedule never expires

**Defined in**

[api/entities/CheckpointSchedule/index.ts:82](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L82)

***

#### id

• **id**: `BigNumber`

schedule identifier number

**Defined in**

[api/entities/CheckpointSchedule/index.ts:60](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L60)

***

#### period

• **period**: `null` | [`CalendarPeriod`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/interfaces/types.calendarperiod)

how often this Schedule creates a Checkpoint. A null value means this Schedule creates a single Checkpoint and then expires

**Defined in**

[api/entities/CheckpointSchedule/index.ts:71](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L71)

***

#### start

• **start**: `Date`

first Checkpoint creation date

**Defined in**

[api/entities/CheckpointSchedule/index.ts:76](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L76)

***

#### uuid

• **uuid**: `string`

**Inherited from**

[Entity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity).[uuid](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/api_entities_entity.entity#uuid)

**Defined in**

[api/entities/Entity.ts:46](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/Entity.ts#L46)

### Methods

#### details

▸ **details**(): `Promise`<[`ScheduleDetails`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/interfaces/api_entities_checkpointschedule_types.scheduledetails)>

Retrieve information specific to this Schedule

**Returns**

`Promise`<[`ScheduleDetails`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/interfaces/api_entities_checkpointschedule_types.scheduledetails)>

**Defined in**

[api/entities/CheckpointSchedule/index.ts:123](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L123)

***

#### exists

▸ **exists**(): `Promise`<`boolean`>

Determine whether this Checkpoint Schedule exists on chain

**Returns**

`Promise`<`boolean`>

**Overrides**

[Entity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity).[exists](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/api_entities_entity.entity#exists)

**Defined in**

[api/entities/CheckpointSchedule/index.ts:189](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L189)

***

#### getCheckpoints

▸ **getCheckpoints**(): `Promise`<[`Checkpoint`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_checkpoint.checkpoint)\[]>

Retrieve all Checkpoints created by this Schedule

**Returns**

`Promise`<[`Checkpoint`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_checkpoint.checkpoint)\[]>

**Defined in**

[api/entities/CheckpointSchedule/index.ts:157](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L157)

***

#### isEqual

▸ **isEqual**(`entity`): `boolean`

Determine whether this Entity is the same as another one

**Parameters**

| Name     | Type                                                                                                                                           |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `entity` | [`Entity`](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity)<`unknown`, `unknown`> |

**Returns**

`boolean`

**Inherited from**

[Entity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity).[isEqual](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/api_entities_entity.entity#isequal)

**Defined in**

[api/entities/Entity.ts:61](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/Entity.ts#L61)

***

#### toHuman

▸ **toHuman**(): `HumanReadable`

Return the Schedule's static data

**Returns**

`HumanReadable`

**Overrides**

[Entity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity).[toHuman](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/api_entities_entity.entity#tohuman)

**Defined in**

[api/entities/CheckpointSchedule/index.ts:211](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/CheckpointSchedule/index.ts#L211)

***

#### generateUuid

▸ `Static` **generateUuid**<`Identifiers`>(`identifiers`): `string`

Generate the Entity's UUID from its identifying properties

**Type parameters**

| Name          |
| ------------- |
| `Identifiers` |

**Parameters**

| Name          | Type          |
| ------------- | ------------- |
| `identifiers` | `Identifiers` |

**Returns**

`string`

**Inherited from**

[Entity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity).[generateUuid](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/api_entities_entity.entity#generateuuid)

**Defined in**

[api/entities/Entity.ts:14](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/Entity.ts#L14)

***

#### unserialize

▸ `Static` **unserialize**<`Identifiers`>(`serialized`): `Identifiers`

Unserialize a UUID into its Unique Identifiers

**Type parameters**

| Name          |
| ------------- |
| `Identifiers` |

**Parameters**

| Name         | Type     | Description         |
| ------------ | -------- | ------------------- |
| `serialized` | `string` | UUID to unserialize |

**Returns**

`Identifiers`

**Inherited from**

[Entity](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/classes/api_entities_entity.entity).[unserialize](https://developers.polymath.network/polymesh-sdk-api-reference/docs-alpha/api_entities_entity.entity#unserialize)

**Defined in**

[api/entities/Entity.ts:23](https://github.com/PolymathNetwork/polymesh-sdk/blob/31dfa0dc/src/api/entities/Entity.ts#L23)
