> For the complete documentation index, see [llms.txt](https://developers.polymath.network/polymesh-sdk-api-reference/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.polymath.network/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md).

# CorporateAction

Represents an action initiated by the issuer of a Security Token which may affect the positions of the Tokenholders

## Hierarchy

* [Entity](/polymesh-sdk-api-reference/docs-v5/classes/entity.md)‹UniqueIdentifiers›

  ↳ **CorporateAction**

  ↳ [DividendDistribution](/polymesh-sdk-api-reference/docs-v5/classes/dividenddistribution.md)

## Index

### Properties

* [context](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#protected-context)
* [declarationDate](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#declarationdate)
* [defaultTaxWithholding](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#defaulttaxwithholding)
* [description](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#description)
* [id](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#id)
* [kind](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#protected-kind)
* [linkDocuments](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#linkdocuments)
* [modifyCheckpoint](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#modifycheckpoint)
* [targets](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#targets)
* [taxWithholdings](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#taxwithholdings)
* [ticker](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#ticker)
* [uuid](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#uuid)

### Methods

* [checkpoint](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#checkpoint)
* [exists](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#exists)
* [isEqual](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#isequal)
* [generateUuid](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#static-generateuuid)
* [unserialize](/polymesh-sdk-api-reference/docs-v5/classes/corporateaction.md#static-unserialize)

## Properties

### `Protected` context

• **context**: [*Context*](/polymesh-sdk-api-reference/docs-v5/classes/context.md)

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md)*.*[*context*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md#protected-context)

*Defined in* [*src/api/entities/Entity.ts:48*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Entity.ts#L48)

### declarationDate

• **declarationDate**: *Date*

*Defined in* [*src/api/entities/CorporateAction/index.ts:70*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L70)

date at which the Corporate Action was created

### defaultTaxWithholding

• **defaultTaxWithholding**: *BigNumber*

*Defined in* [*src/api/entities/CorporateAction/index.ts:86*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L86)

default percentage of tax withholding for this Corporate Action

### description

• **description**: *string*

*Defined in* [*src/api/entities/CorporateAction/index.ts:75*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L75)

brief text description of the Corporate Action

### id

• **id**: *BigNumber*

*Defined in* [*src/api/entities/CorporateAction/index.ts:60*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L60)

internal Corporate Action ID

### `Protected` kind

• **kind**: [*CorporateActionKind*](/polymesh-sdk-api-reference/docs-v5/enums/corporateactionkind.md)

*Defined in* [*src/api/entities/CorporateAction/index.ts:94*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L94)

### linkDocuments

• **linkDocuments**: *ProcedureMethod‹*[*LinkCaDocsParams*](/polymesh-sdk-api-reference/docs-v5/interfaces/linkcadocsparams.md)*, void›*

*Defined in* [*src/api/entities/CorporateAction/index.ts:148*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L148)

Link a list of documents to this corporate action

**`param`** list of documents

**`note`** any previous links are removed in favor of the new list

**`note`** required role:

* Corporate Actions Agent

### modifyCheckpoint

• **modifyCheckpoint**: *ProcedureMethod‹ModifyCaCheckpointParams, void›*

*Defined in* [*src/api/entities/CorporateAction/index.ts:153*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L153)

Modify the Corporate Action's Checkpoint

### targets

• **targets**: [*CorporateActionTargets*](/polymesh-sdk-api-reference/docs-v5/interfaces/corporateactiontargets.md)

*Defined in* [*src/api/entities/CorporateAction/index.ts:81*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L81)

tokenholder identities related to this Corporate action. If the treatment is `Exclude`, the identities are not targeted by the Action, and any identities left out of the array will be targeted, and vice versa

### taxWithholdings

• **taxWithholdings**: [*TaxWithholding*](/polymesh-sdk-api-reference/docs-v5/interfaces/taxwithholding.md)*\[]*

*Defined in* [*src/api/entities/CorporateAction/index.ts:92*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L92)

percentage of tax withholding per Identity. Any Identity not present in this array uses the default tax withholding percentage

### ticker

• **ticker**: *string*

*Defined in* [*src/api/entities/CorporateAction/index.ts:65*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L65)

ticker of the Security Token

### uuid

• **uuid**: *string*

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md)*.*[*uuid*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md#uuid)

*Defined in* [*src/api/entities/Entity.ts:46*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Entity.ts#L46)

## Methods

### checkpoint

▸ **checkpoint**(): *Promise‹*[*Checkpoint*](/polymesh-sdk-api-reference/docs-v5/classes/checkpoint.md) *|* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md) *| null›*

*Defined in* [*src/api/entities/CorporateAction/index.ts:169*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L169)

Retrieve the Checkpoint associated with this Corporate Action. If the Checkpoint is scheduled and has not been created yet, the corresponding CheckpointSchedule is returned instead. A null value means the Corporate Action was created without an associated Checkpoint

**Returns:** *Promise‹*[*Checkpoint*](/polymesh-sdk-api-reference/docs-v5/classes/checkpoint.md) *|* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md) *| null›*

### exists

▸ **exists**(): *Promise‹boolean›*

*Defined in* [*src/api/entities/CorporateAction/index.ts:158*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/CorporateAction/index.ts#L158)

Retrieve whether the Corporate Action exists

**Returns:** *Promise‹boolean›*

### isEqual

▸ **isEqual**(`entity`: [Entity](/polymesh-sdk-api-reference/docs-v5/classes/entity.md)‹object›): *boolean*

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md)*.*[*isEqual*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md#isequal)

*Defined in* [*src/api/entities/Entity.ts:61*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Entity.ts#L61)

Whether this Entity is the same as another one

**Parameters:**

| Name     | Type                                                                    |
| -------- | ----------------------------------------------------------------------- |
| `entity` | [Entity](/polymesh-sdk-api-reference/docs-v5/classes/entity.md)‹object› |

**Returns:** *boolean*

### `Static` generateUuid

▸ **generateUuid**‹**Identifiers**›(`identifiers`: Identifiers): *string*

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md)*.*[*generateUuid*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md#static-generateuuid)

*Defined in* [*src/api/entities/Entity.ts:14*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Entity.ts#L14)

Generate the Entity's UUID from its identifying properties

**Type parameters:**

▪ **Identifiers**: *object*

**Parameters:**

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

**Returns:** *string*

### `Static` unserialize

▸ **unserialize**‹**Identifiers**›(`serialized`: string): *Identifiers*

*Inherited from* [*CheckpointSchedule*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md)*.*[*unserialize*](/polymesh-sdk-api-reference/docs-v5/classes/checkpointschedule.md#static-unserialize)

*Defined in* [*src/api/entities/Entity.ts:23*](https://github.com/PolymathNetwork/polymesh-sdk/blob/524b0225/src/api/entities/Entity.ts#L23)

Unserialize a UUID into its Unique Identifiers

**Type parameters:**

▪ **Identifiers**: *object*

**Parameters:**

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

**Returns:** *Identifiers*
