> For the complete documentation index, see [llms.txt](https://blinkz.gitbook.io/blinkz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://blinkz.gitbook.io/blinkz/sdk/blinkz-actions-sdk/api-reference.md).

# API Reference

#### 1.9.1 Core Types

#### Action

```tsx
interface Action {
    title: string;
    icon: string;
    description: string;
    label: string;
    links?: LinkedAction[];
    error?: ActionError;
}

```

#### LinkedAction

```tsx
type LinkedAction = LinkAction | ReferenceAction | TxAction | TxMultiAction | TransferAction;

```

#### 1.9.2 Functions

#### validateAction

```tsx
function validateAction(action: Action): { valid: boolean; errors: string[] | null }

```

Validates an Action object against the Actions specification.

#### deployToIpfs

```tsx
function deployToIpfs(action: Action, pinataCredentials: PinataCredentials): Promise<string | Error>

```

Deploys an Action to IPFS using Pinata.

#### 1.9.3 Constants

The SDK provides the following constants:

#### chainId

An object mapping network names to their chain IDs.

#### globalInputs

Constant values for global inputs.

#### erc20FunctionSignatures

Mapping of ERC20 function names to their signatures.

#### erc721FunctionSignatures

Mapping of ERC721 function names to their signatures.
