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

> ## Agent Instructions
> Autumn AI (autumn.ai) is a people and company intelligence API, a separate company from useautumn.com (billing software); no billing-product routes exist here.
> Base URL https://api.autumn.ai. Auth on every request: `X-API-Key: <key>` or `Authorization: Bearer <key>`. Plain HTTP + JSON. Schemas: https://www.autumn.ai/docs/openapi.json. Every docs page is Markdown at its URL plus `.md`.

# Outputs and sources

> What a task produces: output kinds, rows built from cells, and the sources behind every value.

A task writes **output rows**. `output` is the shape signal: it tells Autumn where durable
rows should go for the current task contract.

Keep `output` singular. If the artifact you want changes later, continue the task in plan
mode and replan before executing again.

## Output kinds

| Kind       | Use                                                                     | Typical path                      |
| ---------- | ----------------------------------------------------------------------- | --------------------------------- |
| `research` | Lists, claims, evidence, jobs, sources, broad web research.             | `outputs/ai-infra-startups.jsonl` |
| `person`   | Rich person profiles, identity resolution, social links, relationships. | `outputs/scott-stephenson.jsonl`  |
| `company`  | Company profiles, funding, team, hiring, tech stack, news.              | `outputs/deepgram.jsonl`          |

The same agent loop plans, executes, writes files, and streams events for every output
kind. `GET /task/{task_id}/output` returns the task output rows, and
`GET /task/{task_id}/outputs` lists known row artifacts.

## Rows are made of cells

Output rows are **cells**, not bare values. Every field pairs its value with the source it
came from, so each row carries its own provenance:

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "rows": [
    {
      "title": { "value": "Acme Infra", "source_id": "s1" },
      "source_url": { "value": "https://acme.example", "source_id": "s1" },
      "_sources": { "s1": "https://acme.example" }
    }
  ]
}
```

This is the part that surprises people writing their first integration: `row["title"]` is
an object, not a string.

Flatten `{"value": ...}` to plain values when you only want the data, and read `_sources`
when you need to show or audit where a value came from.

<Note>
  Keys prefixed with `_` are row metadata, not columns: `_row_id`, `_sources`, and lineage
  or validation fields. Skip them when presenting results. See
  [Structured output](/docs/guides/structured-output) for a flatten helper.
</Note>

## Reading a specific output

To read one named artifact, use `GET /task/{task_id}/outputs/{output_id}`, or pass
`?output=output_id` to `/output`.

## Next

<CardGroup cols={2}>
  <Card title="Structured output" icon="braces" href="/docs/guides/structured-output">
    Declare the exact columns you want back.
  </Card>

  <Card title="Model tiers" icon="gauge" href="/docs/concepts/model-tiers">
    Pick the tier that fits the work.
  </Card>
</CardGroup>
