# Data product reference

URL: /products/data/reference · Id: `page:products/data/reference`

> Every key of a Dataset product file, its default caps and the Verbs that read and deliver its records, for lookup.

A data product is a product file with `$type: [Dataset]`, usually with `API` beside it. These tables list what each key holds, the defaults every [Dataset API](/products/templates/dataset-api) starts with, and every [Verb](/business/nouns/verb) that reads or delivers its records.

## Definition
| Key | Type | Holds | Required | Status |
| --- | --- | --- | --- | --- |
| [`$type`](/code/file-conventions/products) | list | One or more of `App`, `API`, `Agent`, `Dataset`, `Service` | Yes | `live` |
| [`nouns`](/business/nouns/noun) | Noun names | The Nouns it exposes; a Dataset holds Things of exactly one | No | `live` |
| [`verbs`](/business/nouns/verb) | Verb ids | The Verbs a Customer may call | No | `live` |
| [`interfaces`](/business/nouns/interface) | list | The Interfaces it ships on; every kind by default | No | `live` |
| [`sources`](/products/data/sources-and-refresh) | Source ids | Where its records come from, each owned, wrapped or recruited | Yes | `beta` |
| [`refresh`](/products/data/sources-and-refresh) | `hourly`, `daily`, `weekly` or `monthly` | How often it re-reads every Source | No | `beta` |
| [`coverage`](/products/data/coverage) | list of sentences | The population and date range it answers for, never "complete" | Yes | `beta` |

The [product file convention](/code/file-conventions/products/dataset) shows the keys in a working file.

## Dataset API defaults
| Default | Value |
| --- | --- |
| Facts published beside the price | `recordCount`, `coverage`, `refreshedAt`, `schedule`, `source`, `license` |
| Lookups a caller with no key may make, per IP per day | 100 |
| Free lookups per key, per month | 1,000 |
| What a `test` key reads | Synthetic records only |
| List calls | Paged and priced per row |
| Usage | Billed hits and free misses, apart; a `HEAD` coverage check is free |
| Repeat lookups | The same key inside 24 hours counts once |

## Verbs
| Verb | What it does | [Event](/business/nouns/event) |
| --- | --- | --- |
| [`Dataset.create`](/business/nouns/dataset/create) | Creates the [Dataset](/business/nouns/dataset) from its product file | `Dataset.created` |
| [`Source.create`](/business/nouns/source/create) | Adds a [Source](/business/nouns/source) it draws on | `Source.created` |
| [`Integration.connect`](/business/nouns/integration/connect) | Connects a wrapped Source with its credentials | `Integration.connected` |
| [`Integration.sync`](/business/nouns/integration/sync) | Exchanges records with a connected Source | `Integration.synced` |
| [`Collection.query`](/business/nouns/collection/query) | Reads records by SQL or a [Relationship](/business/nouns/relationship) path | `Collection.queried` |
| [`Collection.export`](/business/nouns/collection/export) | Writes records to a file or a warehouse, once or on a schedule | `Collection.exported` |
| [`Thing.restore`](/business/nouns/thing/restore) | Brings back a deleted record with its history | `Thing.restored` |

Every `get` takes `at`, a time or a [Version](/business/nouns/version) name, and returns the record as it stood then.

## Capabilities without a Verb
| [Capability](/business/nouns/capability) | What it adds | Proposed Verbs |
| --- | --- | --- |
| [Dataset refresh](/products/data/refresh) | Refresh one Source now, or backfill a past range | `Dataset.refresh`, `Dataset.backfill` |
| [Corrections](/products/data/corrections) | Fix a value that was wrong when served and tell each reader | `Thing.correct` |

A capability with status `planned` has no Verb, so no guide offers it and no agent promises it.