> For the complete documentation index, see [llms.txt](https://docs.bloqifi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bloqifi.com/quick-start.md).

# Quick Start

{% hint style="info" %}
**Good to know:** This quick start guide can be good to help you get up and running with our RESTful API in a few steps. Some people prefer diving in with the basics rather than meticulously reading every page of documentation!
{% endhint %}

## Install the library

The best way to interact with our RESTful API is to use one of our official libraries:

{% tabs %}
{% tab title="Node" %}

```
# Install via NPM
npm i -g bloqifi
```

{% endtab %}
{% endtabs %}

## Make your first request

To make your first request, send an request to the web endpoint. This will receive a website `bloq`, based on the blockchain and transaction id (txid) provided.

## Retrieve website

<mark style="color:green;">`POST`</mark> `https://api.bloqifi.com/v0/web`

Retrieve a website

#### Headers

| Name                                           | Type   | Description      |
| ---------------------------------------------- | ------ | ---------------- |
| Accept<mark style="color:red;">\*</mark>       | String | application/json |
| Content-Type<mark style="color:red;">\*</mark> | String | application/json |

#### Request Body

| Name                                         | Type   | Description                                |
| -------------------------------------------- | ------ | ------------------------------------------ |
| txids<mark style="color:red;">\*</mark>      | Array  | List of transaction id's \[`'123', '321']` |
| blockchain<mark style="color:red;">\*</mark> | String | `Bloqcoin`, `Dogecoin`, `Bitcoin`, `IPFS`  |

{% tabs %}
{% tab title="200: OK " %}
Brotli compressed data if there is Content-Encoding support, otherwise raw text/html

```javascript
text/html
```

{% endtab %}

{% tab title="404: Not Found " %}

{% endtab %}
{% endtabs %}

{% hint style="info" %}
**Good to know:** Notice that the Blockchain used is capitalized, this is required.

In the example we will be using `Bloqcoin`
{% endhint %}

Take a look at how you might call this method using our official libraries, or via `curl`:

{% tabs %}
{% tab title="JavaScript" %}

```javascript
const rawResponse = await fetch('https://api.bloqifi.com/v0/web', {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    blockchain: 'Bloqcoin',
    txids: [
      '123',
      '321'
    ]
  })
});

const data = await rawResponse.text();

if (rawResponse.status === 200) {

  // data contains the raw data
}
```

{% endtab %}

{% tab title="curl" %}

```
curl -X POST https://api.bloqifi.com/v0/web \
-H "Content-Type: application/json" \
-d '{"blockchain": "Bloqcoin", "txids": ["123", "321"]}' 
```

{% endtab %}
{% endtabs %}

If the website byte size is larger then 80 bytes, it will be split up in chunks and added to the blockchain in multiple transactions ids. However in the case of `Bloqcoin`, a website can be as large as 20480; //!< bytes (+1 for OP\_RETURN, +2 for the pushdata opcodes) and in most cases only require one transaction id.
