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

# Quickstart

> Get a key, install the tools every integration needs, then pick the product for your target.

Roolink is one API key and, today, two products. This page covers the part that is the same for all of them, then sends you to the quickstart for the product protecting your target.

## Get your API key

[Create an account](https://www.roolink.io/signup), choose a plan, and copy the key from the [dashboard](https://www.roolink.io/dashboard). Every request to Roolink carries it in an `x-api-key` header. Send it only to `*.roolink.io`, never to a target site.

## Install the tools

You need two libraries and one desktop tool. The **Roolink SDK** talks to Roolink. A **TLS client** talks to the target site: bot protection fingerprints the connection itself before it reads anything you send, so an ordinary HTTP library is refused on the first request. These connect the way Chrome does; [Set up your HTTP client](/http-client) shows the full configuration.

**powhttp** is the tool. It records what Chrome really sends, header order included, and what your script sends, so you can copy the first and check the second. Download it from [powhttp.com](https://powhttp.com); it is free and runs on Windows, macOS and Linux.

Keep the key and a proxy URL in environment variables. The proxy must keep one IP for the whole session, because bot protection ties its cookies to the IP.

<CodeGroup>
  ```bash Python theme={null}
  pip install roolink git+https://github.com/Nintendocustom/Python-Tls-Client.git

  export ROOLINK_API_KEY="roo_..."
  export PROXY_URL="http://user:pass@host:port"
  ```

  ```bash Go theme={null}
  go get github.com/roolinkio/roolink-go
  go get github.com/bogdanfinn/tls-client

  export ROOLINK_API_KEY="roo_..."
  export PROXY_URL="http://user:pass@host:port"
  ```

  ```bash TypeScript theme={null}
  npm install @roolink/sdk tlsclientwrapper

  export ROOLINK_API_KEY="roo_..."
  export PROXY_URL="http://user:pass@host:port"
  ```
</CodeGroup>

## Pick your product

Each quickstart ends with a solved challenge on a real site. Not sure which protection you are facing? [Identify it](/identify-protection) in two minutes.

<div className="rl-products">
  <div className="rl-tile">
    <p className="rl-name">Akamai Web</p>
    <p className="rl-desc">Websites behind Akamai Bot Manager. Look for <code>\_abck</code> and <code>bm\_sz</code> cookies.</p>
    <p className="rl-pages"><a href="/akamai-web/quickstart">Quickstart</a></p>
  </div>

  <div className="rl-tile">
    <p className="rl-name">Akamai BMP</p>
    <p className="rl-desc">iOS and Android apps behind Bot Manager Premier.</p>
    <p className="rl-pages"><a href="/akamai-bmp/quickstart">Quickstart</a></p>
  </div>
</div>
