---
title: "Upload Metrics"
method: POST
path: "/companies/{company_id}/experiments/{experiment_id}/metrics"
tags: ["experiments"]
---

# Upload Metrics

`POST /companies/{company_id}/experiments/{experiment_id}/metrics`

## Request

- Base URL: `https://app.zalster.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.zalster.com/companies/{company_id}/experiments/{experiment_id}/metrics`
- Auth: none declared

Upload the channel's per-product, per-variant daily report as CSV.

A plain function (decision 206): reading and upserting a large report on
the event loop held up every other request while it ran.

## Path parameters

- `company_id` string, uuid, required: Company id
- `experiment_id` string, uuid, required

## Request body `multipart/form-data`

- BodyUploadMetricsCompaniesCompanyIdExperimentsExperimentIdMetricsPost
  - `file` string, binary, required

## Response `200`

Successful Response

- MetricsImportOut
  - `rows` integer, required
  - `skipped` integer, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zalster/apis/zalster-feed-processor.md) - [All operations](https://skmtc.dev/zalster/apis/zalster-feed-processor/llms.txt) - [OpenAPI document](https://skmtc.dev/zalster/apis/zalster-feed-processor/revisions/d0b9dc66ad36?raw)
