---
title: "Post a report to the data hub"
method: POST
path: "/reports"
---

# Post a report to the data hub

`POST /reports`

## Query parameters

- `client` string, required
- `option` 'ValidatePayload' | 'CheckConnections' | 'SendImmediately' | 'SkipSend' | 'SkipInvalidItems'
- `default` string[]
- `routeTo` string[]

## Response `200`

OK

- Report
  - `destinationCount` integer — total destinations recieving the report(s)
  - `destinations` Destination[] — where the report is being sent to
    - `itemCount` integer — The number of reports being sent to this destination
    - `organization` string — The name of the organization reciving the report
    - `organization_id` string — The organization id (i.e. {state abbreviation}-phd)
    - `sending_at` string, date-time — The time at which the report will be sent
    - `service` string — The service used for delivering the report
  - `errorCount` integer — total errors found during initial validation. There may be multiple errors per item.
  - `errors` Detail[] — a list of errors in the report
    - `detail` string — The details of the error
    - `id` string — Depends on scope, either the item's id (message_id) or the report's id
    - `scope` 'Parameter' | 'Report' | 'Item' — Does the error apply to one item
  - `id` string, required — the id for the report assigned by the Hub
  - `reportItemCount` integer — total number of individual reports sent to the Hub (in a csv, the number of data lines sent)
  - `routing` ItemRouting[] — The receiver destination names for each item in the report. This is displayed when verbose=true is present on the query string.
    - `destinations` string[] — The organization and service destinations
    - `reportIndex` integer — the index of the item in the submitted report (0 based)
    - `trackingId` string — The tracking id provided by the sender defined in the schema, null otherwise
  - `timestamp` string, time-date — the timestamp for this report submission
  - `topic` string — the topic configured for the client organization sender
  - `warningCount` integer — total warnings found during initial validation. There may be multiple warnings per item.
  - `warnings` Detail[] — a list of warnings in the report
    - `detail` string — The details of the error
    - `id` string — Depends on scope, either the item's id (message_id) or the report's id
    - `scope` 'Parameter' | 'Report' | 'Item' — Does the error apply to one item

## Other responses

- `201` — Created. A report was created, but items may have been rejected.
- `400` — Invalid request. No report created.
- `500` — Internal Server Error

---

[API](https://skmtc.net/cdcgov/apis/prime-data-hub.md) · [All operations](https://skmtc.net/cdcgov/apis/prime-data-hub/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cdcgov/prime-data-hub/versions/c3d0b945fe18/schema)
