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

# Rights and exposure

> Every source carries an exposure class. The public surface returns only redistribution-safe official and public-domain data, so your usage stays clean of licensing risk.

Data is only useful if you can use it without legal exposure. Financial Data API attaches a **rights model** to every source so you always know what you are allowed to do with a value. The public API surface is deliberately scoped to data that is safe to redistribute. Licensed vendor and market price data exists inside Financial Data API for derived analytics, but it never crosses onto a public route, and raw provider payloads are never handed back at all.

The result is simple: if a value reached you through `/v1/public/*`, you can build on it without inheriting someone else's licensing terms.

## Exposure classes

Every source is tagged with one of four exposure classes. The class governs which routes can surface that source's observations.

<Columns cols={2}>
  <Card title="public" icon="globe">
    Redistribution-safe official or public-domain data. This is the only class that appears on `/v1/public/*`. Safe to surface, cache, and build products on.
  </Card>

  <Card title="internal_only" icon="lock">
    Licensed vendor or market price data used inside Financial Data API for derived analytics. Never returned on `/v1/public/*`.
  </Card>

  <Card title="restricted" icon="user-lock">
    Data available only to specific authorized consumers under explicit terms. Not part of the public surface.
  </Card>

  <Card title="blocked" icon="ban">
    Sources that must not be served by the product API at all.
  </Card>
</Columns>

<Info>
  Every observation response carries rights metadata alongside its source attribution and freshness. You never have to guess the class of a value: it travels with the data.
</Info>

## The public surface is the safe surface

The `/v1/public/*` routes return **only** sources classed `public`. These are official releases and public-domain datasets: central-bank rates, national statistics offices, the economic calendar, SEC fundamentals, and Financial Data API's own derived signals over those inputs.

```bash theme={"theme":"css-variables"}
# Public, redistribution-safe latest readings
curl -G "https://api.financialdatapi.com/v1/public/observations/latest" \
  -H "x-api-key: $FINANCIALDATA_API_KEY" \
  --data-urlencode "country=USA" \
  --data-urlencode "indicator=cpi_inflation_yoy"
```

Key public routes, all restricted to redistribution-safe data:

| Route                                | Returns                                                               |
| ------------------------------------ | --------------------------------------------------------------------- |
| `GET /v1/public/observations`        | Normalized observations by canonical indicator ID                     |
| `GET /v1/public/observations/latest` | Latest public macro reading per canonical indicator                   |
| `GET /v1/public/screener`            | Screens countries and entities by latest public indicator values      |
| `GET /v1/public/coverage`            | Breadth summary: catalog totals, public categories, covered countries |
| `GET /v1/public/companies`           | Scored fundamentals universe with sector and industry inline          |

<Tip>
  Want to see exactly what the public surface covers without hard-coding totals? Call `GET /v1/public/coverage`. It returns the current catalog breadth so your integration stays correct as coverage grows.
</Tip>

## Licensed and price data stays internal

Some inputs Financial Data API relies on are licensed: vendor feeds and market price data carry redistribution terms that forbid passing them through to your application. Financial Data API classes these `internal_only`. They can power **derived** analytics, where the output is Financial Data API's own computed signal rather than the licensed input itself, but the licensed values are never exposed on `/v1/public`.

<Warning>
  Do not expect raw market prices or licensed vendor series on any public route. If a value would carry redistribution risk, it is not on the public surface by design. This is the boundary that keeps your usage clean.
</Warning>

## Raw payload bodies are never exposed

Financial Data API ingests raw provider payloads to build the auditable provenance chain, but the product API never returns those payload bodies. What you get instead is a **raw payload reference**: an identifier that lets you confirm a value was derived from a specific captured upstream response, without the API redistributing that upstream body.

This keeps two things true at once: every observation is auditable back to its source, and no upstream provider's raw content is re-served through Financial Data API.

<Note>
  See [Provenance](/concepts/provenance) for how the raw payload reference fits into the full chain from official release to API response.
</Note>

## Usage clean of licensing risk

Put together, the rights model gives you a clear contract:

<Steps>
  <Step title="Build on the public surface" icon="globe">
    Everything on `/v1/public/*` is redistribution-safe official or public-domain data. Cache it, chart it, ship it.
  </Step>

  <Step title="Trust the metadata" icon="tag">
    Rights and exposure travel with every observation. You can enforce your own policies programmatically off the response.
  </Step>

  <Step title="Audit without re-serving" icon="link">
    Use the raw payload reference and the provenance endpoint to prove origin, without Financial Data API redistributing any upstream body.
  </Step>
</Steps>

<Check>
  If a value came to you through a `/v1/public/*` route, it is redistribution-safe by construction. That is the entire point of the public surface.
</Check>

## Related

<Columns cols={2}>
  <Card title="Provenance" icon="link" href="/concepts/provenance">
    The auditable chain from official release to API response.
  </Card>

  <Card title="The time model" icon="clock" href="/concepts/time-model">
    Bi-temporal observations and point-in-time queries.
  </Card>
</Columns>
