---
title: "Initialize index"
method: GET
path: "/init"
tags: ["Admin"]
---

# Initialize index

`GET /init`

Initialize the TrueBlocks system by downloading the Unchained Index from IPFS. Corresponds to the <a href="/chifra/admin/#chifra-init">chifra init</a> command line.

## Query parameters

- `all` boolean
- `example` string
- `dryRun` boolean
- `firstBlock` number
- `sleep` number
- `chain` string

## Response `200`

returns the requested data

- object
  - `data` union[] — Produces <a href="/data-model/admin/#chunkrecord">ChunkRecord</a> or <a href="/data-model/admin/#manifest">Manifest</a> data. Corresponds to the <a href="/chifra/admin/#chifra-init">chifra init</a> command line.
    - union
      - ChunkRecord — a single record in the manifest detailing the IPFS hases and file sizes for each bloom filter and index chunk
        - `range` string, blkrange — the block range (inclusive) covered by this chunk
        - `bloomHash` string, ipfshash — the IPFS hash of the bloom filter at that range
        - `indexHash` string, ipfshash — the IPFS hash of the index chunk at that range
        - `bloomSize` number — the size of the bloom filter in bytes
        - `indexSize` number — the size of the index portion in bytes
        - `rangeDates` object — if verbose, the block and timestamp bounds of the chunk (may be null)
      - Manifest — a JSON object containing records for each bloom filter and index chunk in the Unchained Index
        - `version` string, string — the version string hashed into the chunk data
        - `chain` string, string — the chain to which this manifest belongs
        - `specification` string, ipfshash — IPFS cid of the specification
        - `chunks` ChunkRecord[] — a list of the IPFS hashes of all of the chunks in the unchained index
          - `range` string, blkrange — the block range (inclusive) covered by this chunk
          - `bloomHash` string, ipfshash — the IPFS hash of the bloom filter at that range
          - `indexHash` string, ipfshash — the IPFS hash of the index chunk at that range
          - `bloomSize` number — the size of the bloom filter in bytes
          - `indexSize` number — the size of the index portion in bytes
          - `rangeDates` object — if verbose, the block and timestamp bounds of the chunk (may be null)

## Other responses

- `400` — bad input parameter

## Changes

- **2024-12-17** `2428f6f19a07` — 2 info
  - added the optional property `data/items/oneOf[#/components/schemas/chunkRecord]/rangeDates` to the response with the `200` status
  - added the optional property `data/items/oneOf[#/components/schemas/manifest]/chunks/items/rangeDates` to the response with the `200` status
- **2024-06-01** `d659e0eb3b8e` — 1 info
  - added the new optional `query` request parameter `example`
- **2024-05-06** `6803b81d9e78` — 1 breaking
  - for the `query` request parameter `sleep`, the type/format was changed from `number`/`double` to `number`/`float64`
- **2024-04-10** `92d116712599` — 1 breaking, 3 warning
  - for the `query` request parameter `sleep`, the type/format was changed from `number`/`float64` to `number`/`double`
  - deleted the `query` request parameter `example`
  - removed the optional property `data/items/oneOf[#/components/schemas/chunkRecord]/rangeDates` from the response with the `200` status
  - removed the optional property `data/items/oneOf[#/components/schemas/manifest]/chunks/items/rangeDates` from the response with the `200` status

[Change history](https://skmtc.dev/trueblocks/apis/trueblocks-api/changes/init/get.md)

---

[API](https://skmtc.dev/trueblocks/apis/trueblocks-api.md) · [All operations](https://skmtc.dev/trueblocks/apis/trueblocks-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/trueblocks/trueblocks-api/revisions/2a176f1485a9/schema)
