Smart on openEHR OpenAPI

  • openapi: A URL to the OpenAPI specification of the service

With example:

"openapi": ""


Why doesn’t the OpenAPI always point to openEHR OpenAPI files at specifications-ITS-REST/computable/OAS at master · openEHR/specifications-ITS-REST · GitHub
They shouldn’t be vendor/server specific right?

1 Like

We’ve redirected it to the ITS-REST page for now (openEHR - REST API specifications (ITS-REST) Component - latest), but this could be a mistake. @sebastian.iancu what do you think? Should we change this link to what @joostholslag is suggesting?

I thought that the idea is that discovery is always real to a real life implementation inside the playform. So it is not about a generic (abstract) openapi spec but rather the exact one provided by the platform service. For sure, for conformance perspective this supposed to be 100% aligned with specification, but inreality they might not (for instance when at least that vendor is supporting more serializations formats, more endpoints, various flavours on headers , etc).
Also you have to imagine that in time we will have more version of the spec published, but a vendor implementation always supports a spannor versions or functionality (perhaps does not support latest version).
As a consumer application I would like to see what exists on service side, not what suppose to exist.
Does it make sense to you also?

1 Like

The text at that link has this:

A response from the SMART Configuration endpoint should include besides the FHIR metadata also a hash of all available services on the Platform. The services section allows the application to discover the APIs of all services that can be used along with their description and documentation. The services section is represented as a hash, where the key is represented by a reverse domain name of the service (e.g., and the value represents the service specification.

In the above the term ‘hash’ is used to what I assume is really a ‘map’ (could be implemented by a hash table). The term ‘hash’ on its own usually means cryptographic hash, e.g. SHA-256 or similar.

I suggest changing ‘hash’ to ‘map’ in this document.