---
title: "Get the company breakdown of the De-registered IDs"
method: GET
path: "/v1/stats/deregistered/companies"
tags: ["Participants"]
---

# Get the company breakdown of the De-registered IDs

`GET /v1/stats/deregistered/companies`

## Request

- Base URL: `https://api.peppolstatus.com`
- URL: `https://api.peppolstatus.com/v1/stats/deregistered/companies`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Who left: the De-registered IDs of `/v1/stats/deregistered` (same population, same daily rollup, same `deregistered` total) by company profile, register status, lifetime, re-activation and leftovers.

`entity_type`, `sector`, `size` and `region` come from the company register (BE, FR, NO, SE, FI and SI only) and cover the `enriched` IDs: the cells of each of the four add up to `enriched`, with the key `unknown` for an enriched ID that has no value in that breakdown. Each cell carries `base`, the registered IDs in the same cell, so the two mixes can be compared. `company_status` is the status of the company in its register now: `active` (still in business, gone from Peppol), `ceased`, or `unmatched` (no register match). `lifetime` is the time from the join date to the de-registration; `unknown` holds the IDs with no usable join date or a leave before 2026-08-02. `leftovers` counts the De-registered IDs that still have a Peppol Directory entry (`directory_card`). `reactivation` is the share of the IDs de-registered since 2026-08-02 that are registered again.

A count below 10 is withheld (`count: null`, `suppressed: true`), and so is a cell with a registered base from 1 to 9 (`base: null` too). When one cell alone of a breakdown is withheld, the next-smallest cell is withheld with it, so that it cannot be had back by subtraction (not for `leftovers`, which is part of no total). Counts only: no company and no natural person is named.

## Response `200`

The company breakdown of the De-registered IDs.

- DeregisteredCompanyStats
  - `as_of` string, date, nullable, required: Day of the rollup run. null = no rollup run yet.
  - `refreshed_at` string, date-time, nullable, required
  - `deregistered` integer, required: The same total as `deregistered` of `/v1/stats/deregistered`.
  - `enriched` integer, required: De-registered IDs with a company register profile (at least one of entity type, sector, size and region is known): the scope of `entity_type`, `sector`, `size` and `region`, and the sum of the cells of each.
  - `entity_type` DeregisteredCell[], required
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `sector` DeregisteredCell[], required
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `size` DeregisteredCell[], required
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `region` DeregisteredCell[], required
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `company_status` DeregisteredCell[], required: Keys: active, ceased, unmatched. No `base`.
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `lifetime` DeregisteredCell[], required: Keys: lt_30d, 30_89d, 90_179d, 180_364d, 1_2y, gte_2y, unknown. No `base`.
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `leftovers` DeregisteredCell[], required: Keys: directory_card. No `base`.
    - `key` string, required: `unknown` in a profile breakdown = an enriched ID with no value in it.
    - `label` string: Display label of `key`, on the `size` and `region` cells only: the English size band label and the region name in the local language. Equal to `key` when the code has no label (`unknown` included).
    - `count` integer, nullable, required: null when suppressed.
    - `base` integer, nullable, required: Registered IDs in the same cell. null where the breakdown has no registered base, and when the base is from 1 to 9.
    - `suppressed` boolean, required
  - `reactivation` object, required
    - `deregistered_ever` integer, required: Distinct IDs with a de-registration event from `reliable_from`.
    - `reactivated` integer, required: Of those, the IDs that are registered again now.
    - `pct` number, nullable, required
  - `reliable_from` string, date, required

---

[API](https://skmtc.dev/peppolstatus/apis/peppolstatus-api.md) · [All operations](https://skmtc.dev/peppolstatus/apis/peppolstatus-api/llms.txt) · [OpenAPI document](https://skmtc.dev/peppolstatus/apis/peppolstatus-api/revisions/7e74fb32f23c?raw)
