---
title: "POST /model-hub/eval-templates/<id>/ground-truth/upload/"
method: POST
path: "/model-hub/eval-templates/{template_id}/ground-truth/upload/"
tags: ["model-hub"]
---

# POST /model-hub/eval-templates/<id>/ground-truth/upload/

`POST /model-hub/eval-templates/{template_id}/ground-truth/upload/`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/model-hub/eval-templates/{template_id}/ground-truth/upload/`
- Auth: one of:
  - API key in header `X-Api-Key`
  - API key in header `X-Secret-Key`

Supports two modes:
1. JSON body: { name, columns, data, ... }
2. Multipart file upload: file (CSV/XLS/XLSX/JSON) + name field

## Request body

- GroundTruthUploadRequest
  - `file` string, uri
  - `name` string
  - `description` string
  - `file_name` string
  - `columns` string[]
  - `data` object[]
  - `variable_mapping` object, nullable
  - `role_mapping` object, nullable

## Response `200`

OK

- GroundTruthUploadResponse
  - `status` boolean, required
  - `result` GroundTruthUploadResponseResult, required
    - `id` string, uuid, required
    - `name` string, required
    - `row_count` integer, required
    - `columns` string[], required
    - `embedding_status` string, required

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `500`: Internal Server Error
- `default`: Default error response

---

[API](https://skmtc.dev/futureagi/apis/future-agi-management-api.md) · [All operations](https://skmtc.dev/futureagi/apis/future-agi-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/futureagi/apis/future-agi-management-api/revisions/c8684118e142?raw)
