# Datasets_GetIngestReport

`GET /v1/accounts/{account}/datasets/{dataset}/ingestReport`

The structured report an upload's ingest wrote (meta/ingest_report.json at
the latest publication). NOT_FOUND when the upload has none;
FAILED_PRECONDITION on a mixture.

A merged dataset answers its uploads' reports folded into one,
in the shape of an upload's: `sources` are those of its base upload (the
first, in merge order, that holds the commonest time sync, named in
`base`), `findings` are the processing findings of every upload rolled up
by what they are about, each with the number of uploads it was found in,
`sync_agreement` says how many uploads hold the base's time sync and how
the others differ, and `uploads` counts the reports read, absent,
unreadable and not yet read. The read is bounded in time: a call that
finds uploads unread answers what it has and the next goes further.
NOT_FOUND when none of its uploads has a report; UNAVAILABLE (try again)
when nothing can be folded yet because an upload is still unread or a
read of a report failed in a way a retry may mend.

- Base URL: `https://junction-api.qualiastudios.dev`
- Authentication: an API key in the `X-API-Key` header

## Parameters

- `account` (path, string, required): The account id.
- `dataset` (path, string, required): The dataset id.

## Responses

- `200` OK: `application/json` `qualia.v1.IngestReport`
- `default` Default error response: `application/json` `google.rpc.Status`

## Schemas

```yaml
qualia.v1.IngestReport:
  type: object
  properties:
    name:
      type: string
      description: accounts/{account}/datasets/{dataset}/ingestReport
    sizeBytes:
      readOnly: true
      type: string
      description: Size of the stored report in bytes.
    report:
      readOnly: true
      type: object
      description: |-
        The report as written (version, generated_at, sources, validation);
        unset when omission is set.
    omission:
      readOnly: true
      enum:
        - OMISSION_UNSPECIFIED
        - TOO_LARGE
        - UNPARSEABLE
      type: string
      description: |-
        Why report is unset. A caller shows an omitted report as unreadable,
        never as clean.
      format: enum
  description: |-
    The structured report an upload's ingest wrote: per recording, its topics,
    episodes and findings, and the upload's report card. A merged dataset has
    its uploads' folded into one (Datasets.GetIngestReport).
google.rpc.Status:
  oneOf:
    - $ref: "#/components/schemas/ApiError"
    - $ref: "#/components/schemas/GatewayError"
  description: "The body of a failed call: one of the two shapes below."
ApiError:
  title: API error
  type: object
  required:
    - code
    - message
    - retryable
    - details
  properties:
    code:
      type: string
      description: The gRPC code name in upper case, e.g. `NOT_FOUND`.
    message:
      type: string
    retryable:
      type: boolean
      description: Whether the same call may succeed if retried.
    details:
      type: array
      items:
        type: object
      description: "Empty, except when a dataset copy or move is refused: then one `google.rpc.ErrorInfo` with the refusal's `reason` code, its `domain` and, in `metadata`, the datasets it names."
  description: A refusal from the API itself.
GatewayError:
  title: Gateway error
  type: object
  required:
    - detail
  properties:
    detail:
      type: string
      description: What went wrong.
  description: A refusal from the gateway before the call reaches the API, for example `401` bad or missing API key, `403` key lacks the scope or environment closed, `413` body too large.
```
