> ## Documentation Index
> Fetch the complete documentation index at: https://docs.r28.ai/charter/llms.txt
> Use this file to discover all available pages before exploring further.

# Objects

> Every object and enum the Research tools accept.

## Model tree

<div className="model-tree"><div className="model-tree-scroll"><div className="tree-node"><a href="#outputschema">OutputSchema</a><div className="tree-children"><div className="tree-node"><a href="#outputschemaproperty">OutputSchemaProperty</a><div className="tree-children"><div className="tree-node"><a href="#outputschemaproperty">OutputSchemaProperty</a> <span className="tree-note">above</span></div></div></div></div></div><div className="tree-node"><a href="#researchfile">ResearchFile</a></div></div></div>

## OutputSchema

JSON Schema defining structured research output.

<div className="reference-table">
  | Field                                                              | Type                                                 | Description                            |
  | ------------------------------------------------------------------ | ---------------------------------------------------- | -------------------------------------- |
  | `properties` <span className="required" title="required">\*</span> | map of [OutputSchemaProperty](#outputschemaproperty) | Property definitions keyed by name.    |
  | `required`                                                         | `string`\[]                                          | Property names required in the output. |
</div>

## OutputSchemaProperty

One property in a research `output_schema`.

<div className="reference-table">
  | Field                                                        | Type                                                  | Description                                                                         |
  | ------------------------------------------------------------ | ----------------------------------------------------- | ----------------------------------------------------------------------------------- |
  | `type` <span className="required" title="required">\*</span> | [OutputSchemaPropertyType](#outputschemapropertytype) | Property type.                                                                      |
  | `description`                                                | `string`                                              | Property description. Required on top-level properties; optional on nested `items`. |
  | `properties`                                                 | map of `OutputSchemaProperty`                         | Nested properties when `type` is `object`.                                          |
  | `items`                                                      | [OutputSchemaProperty](#outputschemaproperty)         | Item schema when `type` is `array`.                                                 |
</div>

## ResearchFile

A file attached as an additional research source.

<div className="reference-table">
  | Field                                                        | Type     | Description                                                                    |
  | ------------------------------------------------------------ | -------- | ------------------------------------------------------------------------------ |
  | `name` <span className="required" title="required">\*</span> | `string` | Filename with a `.txt`, `.md`, or `.json` extension.                           |
  | `data` <span className="required" title="required">\*</span> | `string` | Base64-encoded file contents.                                                  |
  | `type`                                                       | `string` | Encoding of the `data` field. The server applies `base64` when this is absent. |
</div>

## ResearchModel

<div className="enum-table">
  | Value  |
  | ------ |
  | `mini` |
  | `pro`  |
  | `auto` |
</div>

## CitationFormat

<div className="enum-table">
  | Value      |
  | ---------- |
  | `numbered` |
  | `mla`      |
  | `apa`      |
  | `chicago`  |
</div>

## OutputLength

<div className="enum-table">
  | Value      |
  | ---------- |
  | `short`    |
  | `standard` |
  | `long`     |
</div>

## OutputSchemaPropertyType

<div className="enum-table">
  | Value     |
  | --------- |
  | `object`  |
  | `string`  |
  | `integer` |
  | `number`  |
  | `array`   |
</div>
