# EU Open Data Portal Registry API (hub-repo)

**Canonical:** https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-registry-api/  
**Provider:** EU Open Data Portal — https://apis.io/providers/eu-open-data-portal/  
**Base URL:** https://data.europa.eu/api/hub/repo  
**Documentation:** https://data.europa.eu/api/hub/repo/

EU Open Data Portal Registry API (hub-repo) is one of 7 APIs that [EU Open Data Portal](https://apis.io/providers/eu-open-data-portal/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. Tagged areas include Registry, DCAT-AP, RDF, Catalogues, and Publishing. The published artifact set on APIs.io includes an OpenAPI specification, an API reference, API documentation, and a changelog.

The piveau hub-repo registry service: the DCAT-AP write surface of data.europa.eu. Manages catalogues, DCAT resources (datasets, data services, dataset series), distributions, drafts, vocabularies, quality metrics and persistent identifiers in the Virtuoso triplestore, in RDF/XML, Turtle, JSON-LD, N-Triples, N-Quads, TriG, TriX and N3. Writes require a catalogue-scoped API key or an EU Login / service-account party token.

## Operations (60 of 91)

| Method | Path | Summary |
|---|---|---|
| GET | `/organizations` | List organizations |
| HEAD | `/organizations` | Headers only for "List organizations" |
| GET | `/organizations/{organizationId}` | Get organization |
| HEAD | `/organizations/{organizationId}` | Headers only for "Get organization" |
| PUT | `/organizations/{organizationId}` | Create or update organization |
| DELETE | `/organizations/{organizationId}` | Delete organization |
| GET | `/catalogues` | List catalogues |
| HEAD | `/catalogues` | Headers only for "List catalogues" |
| GET | `/catalogues/{catalogueId}` | Get catalogue |
| HEAD | `/catalogues/{catalogueId}` | Headers only for "Get catalogue" |
| PUT | `/catalogues/{catalogueId}` | Create or update catalogue |
| DELETE | `/catalogues/{catalogueId}` | Delete catalogue |
| GET | `/catalogues/{catalogueId}/datasets` | List datasets of catalogue |
| HEAD | `/catalogues/{catalogueId}/datasets` | Headers only for "List datasets of catalogue" |
| POST | `/catalogues/{catalogueId}/datasets` | Add dataset to catalogue |
| GET | `/catalogues/{catalogueId}/datasets/origin` | Get datasets of catalogue by means of an original id |
| HEAD | `/catalogues/{catalogueId}/datasets/origin` | Headers only for "Get dataset of a catalogue by means of an original id" |
| PUT | `/catalogues/{catalogueId}/datasets/origin` | Create or update dataset of catalogue by means of an original id |
| DELETE | `/catalogues/{catalogueId}/datasets/origin` | Delete dataset of catalogue by means of an original id |
| GET | `/catalogues/{catalogueId}/resources` | List DCAT resources of catalogue |
| HEAD | `/catalogues/{catalogueId}/resources` | Headers only for "List DCAT resources of catalogue" |
| POST | `/catalogues/{catalogueId}/resources` | Add a new DCAT resource to catalogue |
| GET | `/catalogues/{catalogueId}/resources/origin` | Get DCAT resources of catalogue by means of an original id |
| HEAD | `/catalogues/{catalogueId}/resources/origin` | Headers only for "Get DCAT resource of a catalogue by means of an original id" |
| PUT | `/catalogues/{catalogueId}/resources/origin` | Create or update DCAT resource of catalogue by means of an original id |
| DELETE | `/catalogues/{catalogueId}/resources/origin` | Delete DCAT resource of catalogue by means of an original id |
| GET | `/resources` | — |
| HEAD | `/resources` | — |
| GET | `/resources/{resourceId}` | — |
| HEAD | `/resources/{resourceId}` | — |
| DELETE | `/resources/{resourceId}` | — |
| GET | `/resources/{resourceId}/record` | Get catalogue record |
| HEAD | `/resources/{resourceId}/record` | Headers only for "Get catalogue record" |
| GET | `/resources/{resourceId}/metrics` | Get DCAT resources metrics |
| HEAD | `/resources/{resourceId}/metrics` | Headers only for "Get DCAT resource metrics" |
| PUT | `/resources/{resourceId}/metrics` | Create/Update metrics for a dataset |
| DELETE | `/resources/{resourceId}/metrics` | Delete DCAT resource metrics |
| GET | `/datasets` | List datasets |
| HEAD | `/datasets` | Headers only for "List datasets" |
| POST | `/datasets` | Add dataset |
| PUT | `/datasets` | Create or update dataset |
| DELETE | `/datasets` | Delete a dataset |
| GET | `/datasets/{datasetId}` | Get dataset |
| HEAD | `/datasets/{datasetId}` | Headers only for "Get dataset" |
| PUT | `/datasets/{datasetId}` | Update a Dataset |
| DELETE | `/datasets/{datasetId}` | Delete a dataset |
| GET | `/datasets/revisions/{revisionId}` | Get dataset revision |
| GET | `/datasets/{datasetId}/diff` | Get difference between two revisions |
| GET | `/datasets/{datasetId}/distributions` | List dataset distributions |
| HEAD | `/datasets/{datasetId}/distributions` | Headers only for "List dataset distributions" |
| POST | `/datasets/{datasetId}/distributions` | Add distribution to dataset |
| GET | `/distributions/{distributionId}` | Get distribution |
| HEAD | `/distributions/{distributionId}` | Headers only for "Get distribution" |
| PUT | `/distributions/{distributionId}` | Update distribution |
| DELETE | `/distributions/{distributionId}` | Delete distribution |
| GET | `/datasets/{datasetId}/metrics` | Get dataset metrics |
| HEAD | `/datasets/{datasetId}/metrics` | Headers only for "Get dataset metrics" |
| PUT | `/datasets/{datasetId}/metrics` | Create/Update metrics for a dataset |
| DELETE | `/datasets/{datasetId}/metrics` | Delete metrics |
| GET | `/datasets/{datasetId}/record` | Get catalogue record |

…and 31 more operations. They are listed in full on the page.

## Machine-readable artifacts (6)

- **OpenAPI** — https://raw.githubusercontent.com/api-evangelist/eu-open-data-portal/refs/heads/main/openapi/eu-open-data-portal-hub-repo-openapi.yaml
- **APIReference** — https://data.europa.eu/api/hub/repo/
- **Documentation** — https://dataeuropa.gitlab.io/data-provider-manual/api-documentation/
- **Overlay** — https://raw.githubusercontent.com/api-evangelist/eu-open-data-portal/refs/heads/main/overlays/eu-open-data-portal-hub-repo-overlay.yaml
- **SourceCode** — https://gitlab.com/dataeuropa/hub/repo
- **ChangeLog** — https://gitlab.com/dataeuropa/hub/repo/-/blob/main/CHANGELOG.md

## Other EU Open Data Portal APIs (6)

- [EU Open Data Portal Search API (hub-search)](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-search-api/)
- [EU Open Data Portal MQA Metrics Cache API](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-mqa-metrics-cache-api/)
- [EU Open Data Portal SHACL Validation API](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-mqa-shacl-validation-api/)
- [EU Open Data Portal MQA Metrics Reporter API](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-mqa-metrics-reporter-api/)
- [EU Open Data Portal Statistics API](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-statistics-api/)
- [EU Open Data Portal SPARQL API](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-sparql-api/)

## Tags

Registry, DCAT-AP, RDF, Catalogues, Publishing

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/eu-open-data-portal/eu-open-data-portal-registry-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/eu-open-data-portal/.
