> For the complete documentation index, see [llms.txt](https://docs.shadow.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.shadow.xyz/getting-data/api-keys.md).

# API Keys

All API requests to Shadow are authenticated via API keys. This includes Shadow RPC requests, as well as `api.shadow.xyz` endpoints. You can create a new API key by going to your project’s settings page: <https://app.shadow.xyz/settings>.

Add your API key to the request header to authorize your Shadow API requests. This header must be included in every request.

`X-SHADOW-API-KEY: <YOUR-API-KEY>`&#x20;

For example, this is how you’d authenticate a call to your Shadow RPC:

<pre class="language-bash"><code class="lang-bash"><strong>curl https://rpc.shadow.xyz/ethereum/mainnet/v1/&#x3C;FORK>/&#x3C;VERSION> \
</strong>  -X POST \
  -H "Content-Type: application/json" \
  -H "X-SHADOW-API-KEY: &#x3C;YOUR-API-KEY>" \
  --data '{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}'

</code></pre>
