---
title: "Diagnose"
method: POST
path: "/diagnose/blobs"
tags: ["diagnosis"]
---

# Diagnose

`POST /diagnose/blobs`

## Troubleshoots routes and blobs in the database.
* If the blobs of active routes of given channel name(s) are not available, mark the active routes as passive. 
If the channel name list is not given, then do the process for all channel artifacts.
* Return the list of routes updated
* Identify the index blobs in the database as per the channel names given or for all 
channels (if list is not given) so that admin can analyse it and decide about removing the index blobs

## Request body

- DiagnosisRequest — request body with filter details for diagnosis, currently has channel names list and download_as option
  - `download_as` 'json' — * Specifies the format of report download file. * The report name will follow the convention DiagnosisReport_{timestamp('%Y%m%d_%H%M%S')}
  - `channel_names` string[], nullable — List of Channel names

## Response `200`

Analyse missing blobs

- DiagnoseRoutesAndBlobs — Blobs Diagnosis response
  - `artifact_routes` DiagnosisDetails
    - `channel_name` string
    - `artifacts_list` unknown[]
      - unknown
    - `total` number
    - `action_taken` string
  - `index_blobs` DiagnosisDetails
    - `channel_name` string
    - `artifacts_list` unknown[]
      - unknown
    - `total` number
    - `action_taken` string
  - `diagnosis_timestamp` string

## Other responses

- `401` — Unauthenticated, no token is provided or token is invalid
- `500` — Internal server error

---

[API](https://skmtc.net/anaconda/apis/anaconda-server-api.md) · [All operations](https://skmtc.net/anaconda/apis/anaconda-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/anaconda/anaconda-server-api/revisions/6aef0cb7a151/schema)
