# CCIP v1.6.1 Events API Reference
Source: https://docs.chain.link/ccip/v1/evm/api-reference/v1.6.1/events

> For the complete documentation index, see [llms.txt](/llms.txt).

> **NOTE: Integrate Chainlink CCIP v1.6.1 into your project**
>
> ### npm
>
> If you use [NPM](https://www.npmjs.com/), install the [@chainlink/contracts-ccip NPM package](https://www.npmjs.com/package/@chainlink/contracts-ccip):
>
> ```shell
> npm install @chainlink/contracts-ccip@1.6.1
> ```
>
> ### yarn
>
> If you use [Yarn](https://yarnpkg.com/), install the [@chainlink/contracts-ccip NPM package](https://www.npmjs.com/package/@chainlink/contracts-ccip):
>
> ```shell
> yarn add @chainlink/contracts-ccip@1.6.1
> ```
>
> ### foundry
>
> If you use [Foundry](https://book.getfoundry.sh/), install the package:
>
> ```shell
> forge install smartcontractkit/chainlink-ccip@bbab0601244ce58e2ffac0dbc178a80aab1fa4a3
> ```

When invoking the `ccipSend` [function](/ccip/v1/evm/api-reference/v1.6.1/i-router-client#ccipsend) or when a message is executed via `ccipReceive`, various events are emitted by CCIP contracts. Below is a compiled list of events you can expect during CCIP operations.

## `ccipSend`

These events are emitted when sending a cross-chain message using the `ccipSend` [function](/ccip/v1/evm/api-reference/v1.6.1/i-router-client#ccipsend).

### OnRamp

| Event             | Parameters                                                                                                                                                                    | Description                                       |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| `CCIPMessageSent` | `uint64 indexed destChainSelector`, `uint64 indexed sequenceNumber`, [`Internal.EVM2AnyRampMessage`](/ccip/v1/evm/api-reference/v1.6.1/internal#evm2anyrampmessage) `message` | Emitted when a CCIP message is successfully sent. |

### Token Pool (Send)

| Event                       | Parameters                                                                                | Description                                                                 |
| --------------------------- | ----------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| `LockedOrBurned`            | `uint64 indexed remoteChainSelector`, `address token`, `address sender`, `uint256 amount` | Emitted when tokens are locked or burned during a cross-chain transfer.     |
| `OutboundRateLimitConsumed` | `uint64 indexed remoteChainSelector`, `address token`, `uint256 amount`                   | Emitted when outbound rate limit capacity is consumed for a token transfer. |

## `ccipReceive`

These events are emitted when a cross-chain message is executed on the destination chain.

### OffRamp

| Event                   | Parameters                                                                                                                                                                                                                                                                     | Description                                                           |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------- |
| `ExecutionStateChanged` | `uint64 indexed sourceChainSelector`, `uint64 indexed sequenceNumber`, `bytes32 indexed messageId`, `bytes32 messageHash`, [`Internal.MessageExecutionState`](/ccip/v1/evm/api-reference/v1.6.1/internal#messageexecutionstate) `state`, `bytes returnData`, `uint256 gasUsed` | Emitted when a message execution state changes to SUCCESS or FAILURE. |

### Router

| Event             | Parameters                                                                                   | Description                                                            |
| ----------------- | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| `MessageExecuted` | `bytes32 messageId`, `uint64 sourceChainSelector`, `address offRamp`, `bytes32 calldataHash` | Emitted when the Router successfully routes a message to the receiver. |

### Token Pool (Receive)

| Event                      | Parameters                                                                                                     | Description                                                                          |
| -------------------------- | -------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| `ReleasedOrMinted`         | `uint64 indexed remoteChainSelector`, `address token`, `address sender`, `address recipient`, `uint256 amount` | Emitted when tokens are released or minted to the receiver on the destination chain. |
| `InboundRateLimitConsumed` | `uint64 indexed remoteChainSelector`, `address token`, `uint256 amount`                                        | Emitted when inbound rate limit capacity is consumed for a token transfer.           |