---
title: "Index a Manifest"
method: POST
path: "/indexer/api/v1/index_report"
tags: ["indexer"]
---

# Index a Manifest

`POST /indexer/api/v1/index_report`

By submitting a Manifest object to this endpoint Clair will fetch the layers, scan each layer's contents, and provide an index of discovered packages, repository and distribution information.

## Request body

- Manifest — A description of an OCI Image Manifest.
  - `hash` DigestSchemaJson, required — unresolved $ref
  - `layers` LayerSchemaJson[] — The OCI Layers making up the Image, in order. — unresolved $ref

## Response `201`

IndexReport created.

Clients may want to avoid reading the body if simply submitting the manifest for later vulnerability reporting.

- IndexReport — An index of the contents of a Manifest.
  - `manifest_hash` DigestSchemaJson, required — unresolved $ref
  - `state` string, required — The current state of the index operation
  - `err` string — An error message on event of unsuccessful index
  - `success` boolean, required — A bool indicating succcessful index
  - `packages` object — A map of Package objects indexed by a document-local identifier.
  - `distributions` object — A map of Distribution objects indexed by a document-local identifier.
  - `repository` object — A map of Repository objects indexed by a document-local identifier.
  - `environments` object — A map of Environment arrays indexed by a Package's identifier.

## Other responses

- `400` — Bad Request
- `412` — Precondition Failed
- `415` — Unsupported Media Type
- `default` — Internal Server Error

---

[API](https://skmtc.dev/quay/apis/clair-container-analyzer.md) · [All operations](https://skmtc.dev/quay/apis/clair-container-analyzer/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/quay/clair-container-analyzer/revisions/079b3eb25695/schema)
