Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ get https://\{network}.g.alchemy.com/nft/v3/\{apiKey}/getSpamContracts
getSpamContracts - Returns a list of all spam contracts marked by Alchemy. This endpoint is supported on Ethereum and many L2s, including Polygon, Arbitrum, Optimism, Base, World Chain and more. See the full list of supported networks [here](https://dashboard.alchemy.com/chains).

<Info>
Please note that this API endpoint is only available to pay as you go and enterprise tier customers. Upgrade your account [here](https://dashboard.alchemyapi.io/settings/billing/).
Please note that this API endpoint is only available to pay as you go and enterprise tier customers. Upgrade your account [here](https://dashboard.alchemy.com/settings/billing).
</Info>

<Info>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ With this bool set to true, you will no longer receive webhooks for every new bl

## How do I use GraphQL to construct a query?

If you're new to GraphQL, the in-browser editor on the [Alchemy Notify Dashboard](https://dashboard.alchemyapi.io/notify)has autocomplete enabled and will magically suggest fields as you start typing. If you get lost, you can always search for available queries in the docs tab on the pop-up to the right of the webpage!
If you're new to GraphQL, the in-browser editor on the [Alchemy Webhooks Dashboard](https://dashboard.alchemy.com/webhooks) has autocomplete enabled and will magically suggest fields as you start typing. If you get lost, you can always search for available queries in the docs tab on the pop-up to the right of the webpage!

And, if you need a little inspiration, feel free to use the Alchemy Notify template carousel. Depending on your blockchain/network selection, you'll have a variety of different options to quickly build on top of!

Expand Down Expand Up @@ -105,7 +105,7 @@ To ensure you're using the correct data, track both the block number and the *se

## What does the capacity limit error mean?

The capacity limit error means you've exceeded your total monthly compute units. To upgrade your capacity limits go to your [Alchemy dashboard](https://dashboard.alchemyapi.io/settings/billing). Below is an example capacity limit error.
The capacity limit error means you've exceeded your total monthly compute units. To upgrade your capacity limits go to your [Alchemy dashboard](https://dashboard.alchemy.com/settings/billing). Below is an example capacity limit error.

<CodeGroup>
```shell Capacity limit error
Expand Down
4 changes: 2 additions & 2 deletions fern/api-reference/data/webhooks/notify-api-quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Setting up a webhook is as simple as adding a new URL to your application.

## Set-up webhooks in your dashboard

1. Navigate to the Webhooks tab in your [Alchemy Dashboard](https://dashboard.alchemyapi.io/notify).
1. Navigate to the Webhooks tab in your [Alchemy Dashboard](https://dashboard.alchemy.com/webhooks).
2. Determine which [type of webhook](/reference/notify-api-quickstart#types-of-webhooks) you want to activate.
3. Click the **Create Webhook** button.
4. Select the app to add the webhook notifications.
Expand Down Expand Up @@ -389,7 +389,7 @@ To make your webhooks secure, you can verify that they originated from Alchemy b

## Find your signing key

Navigate to the [Webhooks page](https://dashboard.alchemyapi.io/notify) in your dashboard. Next, click on the three dots of the webhook you want to get the signature for and copy the Signing Key.
Navigate to the [Webhooks page](https://dashboard.alchemy.com/webhooks) in your dashboard. Next, click on the three dots of the webhook you want to get the signature for and copy the Signing Key.

![](4138e14-Screen_Shot_2021-12-13_at_10.41.56_AM.png "Screen Shot 2021-12-13 at 10.41.56 AM.png")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ Below you can find descriptions for each field of the response.

# How to Set-Up Address Activity Webhook

1. In your [Alchemy Dashboard](https://dashboard.alchemyapi.io/notify) click the **Notify** tab.
1. In your [Alchemy Dashboard](https://dashboard.alchemy.com/webhooks) click the **Webhooks** tab.
2. Find Address Activity and click the **CREATE WEBHOOK** button on the right side of the window.

![](https://alchemyapi-res.cloudinary.com/image/upload/v1764193034/docs/api-reference/data/webhooks/webhook-types/6df528a-create-webhook-button.png "create-webhook-button.png")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ Below you can find descriptions for select response fields. Note that this is no

# How to Set Up Custom Webhooks

1. Navigate to the Notify tab in your [Alchemy Dashboard](https://dashboard.alchemyapi.io/notify) and find the Custom GraphQL webhook interface
1. Navigate to the Webhooks tab in your [Alchemy Dashboard](https://dashboard.alchemy.com/webhooks) and find the Custom GraphQL webhook interface
2. Click the **CREATE WEBHOOK** button.
3. Select your desired chain and network. **NOTE:** Each Custom Webhook can only be mapped to a single network/chain; if you want to have the same query applied to numerous chains, make sure to duplicate the creation process!
4. Add your unique webhook URL. This is the link to receive requests. The webhook payload might not always be compatible for 3rd party integrations. For simple visual testing, we recommend using hosted sites like [requestbin](https://requestbin.com/) or [webhook.site](https://webhook.site/) OR spinning up a dedicated server for webhook notifications for production applications.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ Below you can find descriptions for each field of the response.

# How to Set-Up NFT Activity Webhook

1. In your \[Alchemy Dashboard] ([https://dashboard.alchemyapi.io/notify](https://dashboard.alchemyapi.io/notify)) click the **Notify** tab.
1. In your [Alchemy Dashboard](https://dashboard.alchemy.com/webhooks) click the **Webhooks** tab.
2. Find NFT Activity and click the **CREATE WEBHOOK** button on the right side of the window.

![](https://alchemyapi-res.cloudinary.com/image/upload/v1764193036/docs/api-reference/data/webhooks/webhook-types/f2c4699-create-webhook-button.png "create-webhook-button.png")
Expand Down
2 changes: 1 addition & 1 deletion fern/api-reference/debug-api/debug-api-quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ subtitle: The Debug API provides deeper insights into transaction processing and
slug: reference/debug-api-quickstart
---

To use the Debug API your Alchemy plan must be set to the pay as you go or enterprise tiers. ([Upgrade your plan](https://dashboard.alchemyapi.io/settings/billing)) for access.
To use the Debug API your Alchemy plan must be set to the pay as you go or enterprise tiers. ([Upgrade your plan](https://dashboard.alchemy.com/settings/billing)) for access.

<Tip title="Don’t have an API key?" icon="star">
Sign up or upgrade your plan for access. [Get started for free](https://dashboard.alchemy.com/signup)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,5 @@ A wallet address is a string of letters and numbers from which cryptocurrencies

A super easy way to distinguish between a contract address and a wallet address is by calling the `[eth_getCode](/docs/reference/eth-getcode)` method, which will return a contract code if it's a contract and nothing if it's a wallet. Here's an example of both using our composer tool:

* [0x Contract Address](https://composer.alchemyapi.io/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xe41d2489571d322189246dafa5ebde1f4699f498%22%2C%22latest%22%5D%7D)
* [Vitalik's Wallet Address](https://composer.alchemyapi.io/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xAb5801a7D398351b8bE11C439e05C5B3259aeC9B%22%2C%22latest%22%5D%7D)
* [0x Contract Address](https://composer.alchemy.com/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xe41d2489571d322189246dafa5ebde1f4699f498%22%2C%22latest%22%5D%7D)
* [Vitalik's Wallet Address](https://composer.alchemy.com/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xAb5801a7D398351b8bE11C439e05C5B3259aeC9B%22%2C%22latest%22%5D%7D)
Original file line number Diff line number Diff line change
Expand Up @@ -62,16 +62,16 @@ There are three steps to get the timestamp for a transaction:
2. Get the block info by calling \[ref:eth-getblockbynumber)
3. Grab the `timestamp` field in the returned block object

Here is an [example request](https://composer.alchemyapi.io/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getBlockByNumber%22%2C%22paramValues%22%3A%5B%22latest%22%2Cfalse%5D%7D).
Here is an [example request](https://composer.alchemy.com/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getBlockByNumber%22%2C%22paramValues%22%3A%5B%22latest%22%2Cfalse%5D%7D).

It's important to note that block numbers themselves are Ethereum's measure of time, however standard timestamps are available by looking at the block data.

## How do I distinguish between a contract address and a wallet address?

A super easy way to distinguish between a contract address and a wallet address is by calling [eth\_getCode](/reference/eth-getcode), which will return contract code if it's a contract and nothing if it's a wallet. Here's an example of both using our composer tool:

* [**0x Contract Address**](https://composer.alchemyapi.io/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xe41d2489571d322189246dafa5ebde1f4699f498%22%2C%22latest%22%5D%7D)
* [**Vitalik's Wallet Address**](https://composer.alchemyapi.io/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xAb5801a7D398351b8bE11C439e05C5B3259aeC9B%22%2C%22latest%22%5D%7D)
* [**0x Contract Address**](https://composer.alchemy.com/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xe41d2489571d322189246dafa5ebde1f4699f498%22%2C%22latest%22%5D%7D)
* [**Vitalik's Wallet Address**](https://composer.alchemy.com/?composer_state=%7B%22network%22%3A0%2C%22methodName%22%3A%22eth_getCode%22%2C%22paramValues%22%3A%5B%220xAb5801a7D398351b8bE11C439e05C5B3259aeC9B%22%2C%22latest%22%5D%7D)

## What is the difference between `DATA` and `QUANTITY`?

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ slug: reference/op-mainnet-error-codes
| Error Code | Error Message | Solution |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `429` | `Your app has exceeded its compute units per second capacity. If you have retries enabled, you can safely ignore this message. If not, check out <https://docs.alchemy.com/reference/throughput>` | We recommend [implementing retries](/docs/how-to-implement-retries) if you have not already. If you still experience issues you can increase your throughput limit by [upgrading your account](https://dashboard.alchemy.com/settings/billing). |
| `429` | `Your app has exceeded its concurrent requests capacity. If you have retries enabled, you can safely ignore this message. If not, check out <https://docs.alchemy.com/reference/throughput>. Reach out to us if you'd like to increase your limits: <https://dashboard.alchemyapi.io/support>` | We recommend [implementing retries](/docs/how-to-implement-retries) if you have not already. If you still experience issues you can increase your throughput limit by [upgrading your account](https://dashboard.alchemy.com/settings/billing). |
| `429` | `Your app has exceeded its concurrent requests capacity. If you have retries enabled, you can safely ignore this message. If not, check out <https://docs.alchemy.com/reference/throughput>. Reach out to us if you'd like to increase your limits: <https://dashboard.alchemy.com/support>` | We recommend [implementing retries](/docs/how-to-implement-retries) if you have not already. If you still experience issues you can increase your throughput limit by [upgrading your account](https://dashboard.alchemy.com/settings/billing). |
| `429` | `Optimism sequencer sender global transaction limit exceeded. This limit is set at the chain level. To ensure your request goes through, we recommend implementing retries <https://docs.alchemy.com/docs/how-to-implement-retries>` | This limit is set by Optimism at the sequencer level, see [Optimism API FAQ](/reference/optimism-api-faq). We recommend [implementing retries](/docs/how-to-implement-retries) if you have not already. If you still experience issues you can increase your throughput limit by [upgrading your account](https://dashboard.alchemy.com/settings/billing). |
| `429` | `Optimism sequencer global transaction limit exceeded This limit is set at the chain level. To ensure your request goes through, we recommend implementing retries <https://docs.alchemy.com/docs/how-to-implement-retries>` | This limit is set by Optimism at the sequencer level, see [Optimism API FAQ](/reference/optimism-api-faq). We recommend [implementing retries](/docs/how-to-implement-retries) if you have not already. If you still experience issues you can increase your throughput limit by [upgrading your account](https://dashboard.alchemy.com/settings/billing). |
| `429` | `eth_sendRawTransaction is a method with custom rate limits that you have exceeded. If you have retries enabled, you can safely ignore this message. If not, check out <https://docs.alchemy.com/reference/throughput>` | We recommend [implementing retries](/docs/how-to-implement-retries) if you have not already. If you still experience issues you can increase your throughput limit by [upgrading your account](https://dashboard.alchemy.com/settings/billing). |
2 changes: 1 addition & 1 deletion fern/api-reference/trace-api/trace-api-quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ subtitle: The Trace API provides insights into transaction processing and on-cha
slug: reference/trace-api-quickstart
---

To use the Trace API your Alchemy plan must be set to the pay as you go or enterprise tiers. Upgrade [your plan](https://dashboard.alchemyapi.io/settings/billing) for access.
To use the Trace API your Alchemy plan must be set to the pay as you go or enterprise tiers. Upgrade [your plan](https://dashboard.alchemy.com/settings/billing) for access.

<Tip title="Don’t have an API key?" icon="star">
Sign up or upgrade your plan for access. [Get started for free](https://dashboard.alchemy.com/signup)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Before reading this article you should have a clear understanding of [EVM Traces

# How to Use trace\_block

To use the [trace\_block](/reference/trace-block) method you need to be in pay as you go or enterprise tier. [Sign up for Alchemy](https://dashboard.alchemy.com/signup) or [upgrade your account](https://dashboard.alchemyapi.io/settings/billing/?a=e8cafd6dd9).
To use the [trace\_block](/reference/trace-block) method you need to be in pay as you go or enterprise tier. [Sign up for Alchemy](https://dashboard.alchemy.com/signup) or [upgrade your account](https://dashboard.alchemy.com/settings/billing).

You can call the [trace\_block](/reference/trace-block) method, by providing an integer formatted as a hex string that represents the block number for which you wish to make the request. Once you have the block number (formatted as a hex string), you can call the "trace\_block" method with it as follows:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Before reading this article you should have a clear understanding of [EVM Traces

# How to use trace\_filter

To use the [trace\_filter](/reference/trace-filter) method you need to be in pay as you go or enterprise tier. [Sign up for Alchemy](https://dashboard.alchemy.com/signup) or [upgrade your account](https://dashboard.alchemyapi.io/settings/billing/?a=e8cafd6dd9).
To use the [trace\_filter](/reference/trace-filter) method you need to be in pay as you go or enterprise tier. [Sign up for Alchemy](https://dashboard.alchemy.com/signup) or [upgrade your account](https://dashboard.alchemy.com/settings/billing).

You can call the `trace_filter` method by passing a filter object as a parameter to it. An example request and response are given below:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ This method returns the traces of the given transaction as a response:

# How to use trace\_transaction

To use the [trace\_transaction](/reference/trace-transaction) method you need to be in pay as you go or enterprise tier. [Sign up for Alchemy](https://dashboard.alchemy.com/signup) or [upgrade your account](https://dashboard.alchemyapi.io/settings/billing/?a=e8cafd6dd9).
To use the [trace\_transaction](/reference/trace-transaction) method you need to be in pay as you go or enterprise tier. [Sign up for Alchemy](https://dashboard.alchemy.com/signup) or [upgrade your account](https://dashboard.alchemy.com/settings/billing).

You can call the [trace\_transaction](/reference/trace-transaction) method by providing the transaction hash of the transaction you wish to trace. You can find this by looking up the transaction on a block explorer. Once you have the transaction hash, you can call the "trace\_transaction" method with it as follows:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -516,7 +516,7 @@ Your `.env` file should have at least these three environment variables defined:

Congrats! You just deployed a smart contract to the Polygon sidechain 🎉.

To understand what’s going on under the hood, lets navigate to the Explorer tab in our [Alchemy dashboard](https://dashboard.alchemyapi.io/explorer). If you have multiple Alchemy apps, make sure to filter by app and select "Polygon Smart Contract".
To understand what’s going on under the hood, let's navigate to the Explorer tab in our [Alchemy dashboard](https://dashboard.alchemy.com/explorer). If you have multiple Alchemy apps, make sure to filter by app and select "Polygon Smart Contract".

![880](9dd1c3f-Explorer.png "Explorer.png")

Expand Down Expand Up @@ -627,7 +627,7 @@ After running that command on your command line, you should see output like this

Once you see this output, that means you've successfully interacted with your polygon network smart contract.

You can also verify that Alchemy has broadcasted and mined your transaction by going to the [Alchemy Mempool Watcher ](https://dashboard.alchemyapi.io/mempool)and taking a look at your most recent transaction.
You can also verify that Alchemy has broadcasted and mined your transaction by going to the [Alchemy Mempool Watcher](https://dashboard.alchemy.com/mempool) and taking a look at your most recent transaction.

By clicking into that transaction, you should see something like this that provides all the information you might want to know about your transaction, including what `Block Number` it was mined in, which `From Address` initiated the transaction, which `To Address` is the recipient of the transaction, how much `Value` (in MATIC) exchanged hands, what the transaction fees were, and much more:

Expand Down
Loading
Loading