Download OpenAPI specification:Download
De OpenCatalogi Publications API is de bovenste laag van het OpenWoo-koppelvlak — de API die de woo-website-template-apiv2 en andere consumenten aanroepen. Hij ontsluit publicaties via een catalogus (slug publications voor WOO) en delegeert intern naar OpenRegister.
Onder deze laag ligt de OpenRegister-objects-API — de ruwere /objects/{register}/{schema}-laag waar deze publicaties feitelijk in zitten opgeslagen. Gebruik die alleen wanneer je register/schema-specifiek en buiten een catalogus om wilt bevragen. Zie API-koppelvlak voor de architectuur-context.
Belangrijk — handmatig onderhouden. OpenCatalogi exporteert (nog) geen eigen OAS-endpoint. Deze spec is handmatig opgesteld op basis van
lib/Controller/*.phpinConduction/opencatalogien de calls diewoo-website-template-apiv2daadwerkelijk maakt. Wijzigt de upstream-API? Open een PR opopenwoo-app-websitetegenstatic/oas/opencatalogi-publications.json.
Alle GET-endpoints hieronder zijn anoniem aanroepbaar (geen auth-header). De backend past server-side twee filters toe op anonieme callers, beide moeten "groen" zijn voordat een object wordt teruggegeven:
authorization.read-regels op het schema (datum-driven via publicatiedatum/depublicatiedatum voor WOO).PublicationsController::show() checkt aanvullend dat @self.published gevuld is en niet in de toekomst ligt.Zie de API-koppelvlak-doc voor de volledige uitleg + JSON-voorbeelden van de authorization.read-regels.
Catalogus-lijst en metadata. Een catalogus is een gegroepeerde set van OpenRegister-registers + schema's, met een uniek slug-pad. Voor WOO heet de catalogus publications.
Geeft alle catalogi terug in de OpenCatalogi-instantie. Voor WOO is dit typisch één catalogus met slug publications. Gebruik de slug van een catalogus als pad-segment bij de /publications-endpoints.
{- "total": 0,
- "page": 0,
- "pages": 0,
- "limit": 0,
- "offset": 0,
- "results": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "slug": "string",
- "title": "string",
- "summary": "string",
- "description": "string",
- "listed": true,
- "status": "draft",
- "registers": [
- 0
], - "schemas": [
- 0
], - "@self": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "register": "string",
- "schema": "string",
- "name": "string",
- "published": "2019-08-24T14:15:22Z",
- "depublished": "2019-08-24T14:15:22Z",
- "owner": "string",
- "organisation": "string",
- "created": "2019-08-24T14:15:22Z",
- "updated": "2019-08-24T14:15:22Z",
- "relevance": 100
}
}
]
}Geeft één catalogus terug op id of slug.
| id required | string Catalog-id (UUID) of -slug |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "slug": "string",
- "title": "string",
- "summary": "string",
- "description": "string",
- "listed": true,
- "status": "draft",
- "registers": [
- 0
], - "schemas": [
- 0
], - "@self": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "register": "string",
- "schema": "string",
- "name": "string",
- "published": "2019-08-24T14:15:22Z",
- "depublished": "2019-08-24T14:15:22Z",
- "owner": "string",
- "organisation": "string",
- "created": "2019-08-24T14:15:22Z",
- "updated": "2019-08-24T14:15:22Z",
- "relevance": 100
}
}Publicatie-endpoints binnen een catalogus. Het pad-segment {catalogSlug} is de catalogus-slug — voor WOO publications. Deze endpoints leveren de gefilterde publicatie-resultaten + facetten + catalogus-context (@catalog).