> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://infonite.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://infonite.dev/_mcp/server.

# Income floor, lifetime employment history, and the new Data models reference

Two families of news: the Spanish labor check got substantially deeper, and the documentation gained a whole section dedicated to the data itself.

### Spain Public Administration (v1)

* **Guaranteed income floor**: every labor check now carries an automatically computed income insight — a conservative **minimum net income** — deductions estimated conservatively, so it stays a floor — derived from the person's certified contribution bases, with each current employer's share broken out. It ships as part of the labor check model ([`income_floor`](/guides/data-models/labor-check#TGSSSpainLaborCheckSchema.income_floor) — [how to read it](/guides/data-models/labor-check#income-floor)). Nothing to configure: it is computed automatically whenever you request the `labor_check` feature.

> **Warning**
>
> The floor is a **guaranteed minimum**, never a salary estimate: real income can only be equal or higher, and for self-employed workers it deliberately understates. Use it as the lower bound in your risk models.

* **Lifetime contribution history**: the connection now reads the official TGSS certificates directly and returns the **full per-employer contribution history** — previously limited to the last \~5 years ([contribution bases](/guides/data-models/labor-check#contribution-bases)). The certificates travel as [attachments](/guides/data-models/attachments) carrying their official verification codes, re-checkable against the Seguridad Social at any time.
* **Current work statuses**: the labor check now answers *"what is this person's situation today"* at a glance — one entry per ongoing relation (employee, self-employed, public employee, unemployment benefit…); simultaneous employments show as repeats, and benefit income never inflates the income floor.
* **Sandbox parity**: the sandbox connection returns the same new shapes, so you can integrate and test end to end before going near production.

### New in the docs: Data models

The API reference shows you the endpoints; the new [**Data models**](/guides/data-models/overview) section shows you the **data** — every object the platform returns, laid out flat and explained field by field: where it arrives in your results, how the pieces join together, and the caveats that matter when you consume it. Start with the [customer profile](/guides/data-models/customer-profile), the [labor check](/guides/data-models/labor-check) and [public pensions](/guides/data-models/public-pensions), and continue through [driver](/guides/data-models/driver) & [vehicles](/guides/data-models/vehicles), [academic records](/guides/data-models/academic), [taxes](/guides/data-models/taxes), [properties](/guides/data-models/properties), [credit registry](/guides/data-models/credit-registry) and [attachments](/guides/data-models/attachments).