> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blockworksresearch.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Getting Started

> Get up and running with the Blockworks API

## 1. Obtain an API Key

<Accordion title="Complete Walkthrough">
  <Steps>
    <Step title="Sign Up for a Blockworks Research Account">
      <Card title="Log in to your account" icon="key" href="https://app.blockworksresearch.com/settings/api-keys">
        Choose your plan and log in to your account
      </Card>
    </Step>

    <Step title="Navigate to the API Key Management page">
      Profile > Account Management > API

      <img src="https://mintcdn.com/blockworks/AjPI0U1Y6mpf653K/images/screenshots/user-dropdown.png?fit=max&auto=format&n=AjPI0U1Y6mpf653K&q=85&s=9ed08aed51fef7303ef0d00e353416ec" alt="API Key Management" width="444" height="503" data-path="images/screenshots/user-dropdown.png" />
    </Step>

    <Step title="Create a New API Key">
      Enter a new name for your API key and click "Create Key".

      <img src="https://mintcdn.com/blockworks/AjPI0U1Y6mpf653K/images/screenshots/api-key-creation.png?fit=max&auto=format&n=AjPI0U1Y6mpf653K&q=85&s=5bdcbfc45506844071ee369a7682c0ff" alt="API Key Management" width="926" height="410" data-path="images/screenshots/api-key-creation.png" />
    </Step>

    <Step title="Save It Somewhere Safe">
      Once generated, you won't be able to access it again. Copy the key to your clipboard and store it securely.

      <img src="https://mintcdn.com/blockworks/AjPI0U1Y6mpf653K/images/screenshots/key-generated.png?fit=max&auto=format&n=AjPI0U1Y6mpf653K&q=85&s=980da57af34de77fcd3282c3b418a419" alt="API Key Management" width="890" height="619" data-path="images/screenshots/key-generated.png" />
    </Step>
  </Steps>
</Accordion>

## 2. Use Your API Key to Make a Request

Once we have our API key, we can make requests to the API.  Here's a simple example of how to fetch the list of available assets:

<CodeGroup>
  ```bash cURL theme={null}
  curl -H "x-api-key: YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    https://api.blockworks.com/v1/assets
  ```

  ```typescript TypeScript theme={null}
  const data = await fetch(
    'https://api.blockworks.com/v1/assets',
    { headers: { 'x-api-key': 'YOUR_API_KEY' } }
  )

  const data = await response.json()
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://api.blockworks.com/v1/assets',
      headers = { 'x-api-key': 'YOUR_API_KEY' }
  )

  data = response.json()
  ```
</CodeGroup>

### Example Response

Most API responses follow a consistent structure, with the `data` property containing an array of items,
a `total` property indicating the total number of items,
and a `page` property indicating the current page.

```json theme={null}
{
  "data": [
    {
      "category": "Infrastructure",
      "code": "ETH",
      "description": "Ethereum is a distributed blockchain computing platform for smart...",
      "id": 2,
      "image_url": "https://coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628",
      "is_supported": true,
      "is_supported": true,
      "legacy_sector": "Smart Contract Platforms",
      "sector_id": 40,
      "slug": "ethereum",
      "tag_line": "A decentralized computing platform",
      "title": "Ethereum",
      "type": "Infrastructure",
      "updated_at": 1747346559
    },
    ... // more assets
  ],
  "total": 12,
  "page": 1
}
```

That's it!
