# How can we track a user's transactions?

If you want to track and display information to the user about their transactions on the blockchain, you can use our User Events API. Transactions on the blockchain are transparent to every user and do not require additional authorization. Below is an example of one of such queries and the received information.

{% hint style="info" %}
**GET** /v1/user-events/{address}
{% endhint %}

The `GET /v1/user-events/{address}` allows to retrieve information about the history of a specific wallet address on the blockchain. By providing the wallet address, you can obtain details about various events, transactions, and other activities.

#### Authentication

Authentication is not required to send this request, but it is necessary to provide the user's wallet address from which we want to retrieve data.

**Query parameters**

<table data-header-hidden><thead><tr><th width="226"></th><th></th></tr></thead><tbody><tr><td><strong>Name</strong></td><td><strong>Description</strong></td></tr><tr><td><strong>address</strong></td><td>(string, required): The wallet address for which you want to retrieve event history.</td></tr><tr><td><strong>skip</strong></td><td>(number, optional): The number of records to skip in the response.</td></tr><tr><td><strong>limit</strong></td><td>(number, optional): The maximum number of records to return in the response.</td></tr><tr><td><strong>blockNumber</strong></td><td>(number, optional): Filter events by block number.</td></tr><tr><td><strong>transactionHash</strong></td><td>(string, optional): Filter events by transaction hash.</td></tr><tr><td><strong>event</strong></td><td>(string, optional): Filter events by event type.</td></tr><tr><td><strong>_quantity</strong></td><td>(string, optional): Filter events by quantity.</td></tr><tr><td><strong>_tokenId</strong></td><td>(string, optional): Filter events by token ID.</td></tr><tr><td><strong>id</strong></td><td>(string, optional): Filter events by ID.</td></tr><tr><td><strong>createdAt</strong></td><td>(string, optional): Sort the results (e.g., "asc" or "desc").</td></tr><tr><td><strong>blockNumber</strong></td><td>(number, optional): Filter events by block number.</td></tr></tbody></table>

<details>

<summary><strong>Example cURL</strong></summary>

{% code overflow="wrap" %}

```bash
curl --location 'https://api.metaproprotocol.com/ms/nft-events/v1/user-events/0x767e5c2359e7c809b16d8cffdb9464f91b6c970b?createdAt=desc' \
--header 'accept: application/json'
```

{% endcode %}

</details>

<details>

<summary><strong>Example response body (200 OK)</strong></summary>

```json
{
  "_id": "6399fff8267ef946a3139dfb",
  "address": "0x1033307dd108ee32931f553a78f8f457e855d9fe",
  "blockNumber": 25452855,
  "logId": "log_9fe855",
  "transactionHash": "0xa196e0b69aa1a09123544a7fb6bb3f85b0d7512c0cdce97a439fcc72f29cfa94",
  "type": "NftMintedEvent",
  "_bucketHash": "ecfac6d9-1449-4d81-ab73-6bc7b9a559f7",
  "_quantity": "100",
  "_tokenId": "814",
  "chainId": 97,
  "createdAt": "2022-12-14T16:55:20.775Z",
  "creator": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
  "event": "Minted",
  "initialOwner": "0x767e5c2359e7c809b16d8cffdb9464f91b6c970b",
  "network": "bnb-chain"
}
```

</details>

<details>

<summary>E<strong>xample of the response body (400 Bad Request)</strong></summary>

```json
{
    "statusCode": 400,
    "messages": [
        "address must be longer than or equal to 42 characters"
    ],
    "error": "Bad Request"
}
```

</details>

<details>

<summary><strong>Example of the response body (404 Not found)</strong></summary>

```json
{
  "statusCode": 404,
  "messages": [
    "Not found!"
  ],
  "error": "Not Found"
}
```

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.metaproprotocol.com/developer-documentation/blockchain-communication-and-information-retrieval/how-can-we-track-a-users-transactions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
