---
title: "ParseResult"
canonical_url: "https://www.nutrient.io/api/python/results/parse-result/"
md_url: "https://www.nutrient.io/api/python/results/parse-result.md"
last_updated: "2026-10-26T16:51:00.819Z"
description: "The artifacts produced by `parse`: the same files, under the same names and with the same content, that the hosted service returns for the same request."
---

The artifacts produced by `parse`: the same files, under the same names and with the same content, that the hosted service returns for the same request.

```python

from nutrient_sdk import ParseResult

```

## Construction

`ParseResult` cannot be instantiated directly. Obtain instances through static factory methods or via other SDK classes.

## Methods

### get_artifact

```python

def get_artifact(self, name: str) -> str

```

Returns the content of an artifact, exactly as the run produced it.

**Parameters:**

| Name   | Type  | Description                                          |
| ------ | ----- | ---------------------------------------------------- |
| `name` | `str` | The artifact file name, for example `document.json`. |

**Returns:** `str` - The artifact content.

**Raises:**

- [`NullOrEmptyParameterException`](/api/python/exceptions/null-or-empty-parameter-exception/): Thrown when `name` is null or empty.

- [`InvalidArgumentException`](/api/python/exceptions/invalid-argument-exception/): Thrown when this run did not produce that artifact.

---

### has_artifact

```python

def has_artifact(self, name: str) -> bool

```

Whether this run produced an artifact with the given file name.

**Parameters:**

| Name   | Type  | Description                                          |
| ------ | ----- | ---------------------------------------------------- |
| `name` | `str` | The artifact file name, for example `document.json`. |

**Returns:** `bool` - True when the artifact was produced.

---

### save_to

```python

def save_to(self, directory: str) -> None

```

Writes every artifact into a directory under its own file name, creating the directory when needed and replacing files that already exist.

**Parameters:**

| Name        | Type  | Description                  |
| ----------- | ----- | ---------------------------- |
| `directory` | `str` | The directory to write into. |

**Raises:**

- [`NullOrEmptyParameterException`](/api/python/exceptions/null-or-empty-parameter-exception/): Thrown when `directory` is null or empty.

- [`InvalidArgumentException`](/api/python/exceptions/invalid-argument-exception/): Thrown when an artifact name is not a plain file name.

---

## Properties

### artifact_names

```python

@property
def artifact_names(self) -> list

```

The file names of the artifacts this run produced, sorted.

**Type:** `list`

*Read-only property.*

---

### document_json

```python

@property
def document_json(self) -> str

```

The content of `document.json`, or null when this run did not produce it.

**Type:** `str`

*Read-only property.*

---

### document_md

```python

@property
def document_md(self) -> str

```

The content of `document.md`, or null when this run did not produce it.

**Type:** `str`

*Read-only property.*

---

---

## Related pages

- [All public classes import directly from the top-level package:](/api/python/results.md)
- [Extract Result](/api/python/results/extract-result.md)

