---
title: "get_parse_rows"
method: GET
path: "/v1/jobs/{job_id}/spreadsheet-rows/{artifact_ref}"
tags: ["operations"]
---

# get_parse_rows

`GET /v1/jobs/{job_id}/spreadsheet-rows/{artifact_ref}`

## Request

- Base URL: `https://ndi-api.nace.ai`
- URL: `https://ndi-api.nace.ai/v1/jobs/{job_id}/spreadsheet-rows/{artifact_ref}`
- Auth: API key in header `X-API-Key`
- TypeScript: <https://skmtc.dev/nace/apis/ndi-platform-api/docs/v1/jobs/:job_id/spreadsheet-rows/:artifact_ref/get.ts> (a function with typed inputs; its response is checked against the schema)

Read only the requested rows from the exact Parquet snapshot used by Parse.

## Path parameters

- `artifact_ref` string, required
- `job_id` string, uuid, required: Job identifier.

## Query parameters

- `start_row` integer: Zero-based first source row.
- `limit` integer: Maximum rows to return.

## Response `200`

Successful Response

- ArtifactRowsPage: One page of rows from a tabular workspace artifact. Rows are returned in file order, so ``start_row`` is both the request offset and the file row number of ``rows[0]`` — callers can label each row with its source row number without another lookup.
  - `columns` QueryTableColumn[], required
    - `data_type` string, required
    - `name` string, required
  - `limit` integer, required
  - `path` string, required
  - `rows` object[], required
  - `start_row` integer, required
  - `total_rows` integer, required

## Other responses

- `504`: Gateway Timeout
- `default`: Typed error envelope used by every 4xx and 5xx. ``error.code`` distinguishes the failure; HTTP status is a consequence of the code.

---

[API](https://skmtc.dev/nace/apis/ndi-platform-api.md) - [All operations](https://skmtc.dev/nace/apis/ndi-platform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nace/apis/ndi-platform-api/revisions/54dad7e0ff00?raw)
