How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

CKM REST API

REST API for the Clinical Knowledge Manager — 48 operations across 39 paths covering archetypes (list, search, ADL/XML/mindmap retrieval, specialisation parent, status by asset version, MD5 hash, import, trunk update, delete), templates (list, search, OET/OPT retrieval, file-set URL, required archetypes, embedded templates, validation report, status read and update, import, trunk update, delete), the archetype/template union "resources" view with the instance publisher namespace, projects and subdomains, change requests and resource proposals, and user and session management. Authentication is HTTP Basic or a JSESSIONID session header; public projects on a public instance read anonymously.

This API exposes 48 operations across 39 paths, organized into 9 resource areas, and defines 8 schemas. It is described by OpenAPI 2.0, at version 1.6.0.

Requests are made against the base URL https://ckm.openehr.org/ckm/rest/v1.

48 operations 39 paths 8 schemas 3 DELETE37 GET5 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
1.6.0
Base URL
https://ckm.openehr.org/ckm/rest/v1
Authentication
API Key, basic
Resource Areas
9

Authentication & Security 2

CKM REST API declares 2 security schemes for authenticating requests. An API key is passed in the header as JSESSIONID (sessionid). It defines a basic scheme (basicAuth).

  • sessionid — Once the session id is known, it can be used for authentication until expired. The provided session id is used (and validated) on making an actual request.
  • basicAuth — Basic authentification using the CKM username and password. The provided credentials are used (and validated) on making an actual request.

Paths & Operations 48

Across 39 paths, the API surfaces 48 operations — 3 DELETE, 37 GET, 5 POST, 3 PUT. They span 9 resource areas: Archetypes, Change Requests, Projects, Resource Proposals, Resources, Sessions, Subdomains, Templates, Users. Each is listed below with its method, path, parameters, and response codes.

Archetypes 14

Endpoint for archetype-related services, including listing and getting archetypes.

GET
/archetypes/{cid-archetype}/hash
Gets the (non-canonical) MD5 hash of the specified archetype in ADL format.
getArchetypeADLHash 4 params → 200400404
GET
/archetypes/{cid-archetype}/parent
Gets main data about the specified archetype's parent archetype, if any.
getParentArchetype 1 param → 200204400404
GET
/archetypes/citeable-identifier/{archetype-id}
Gets the citeable identifier of an archetype based on the specified archetype id.
getCiteableIdentifierForArchetypeId 1 param → 200400404
GET
/archetypes/{cid-archetype}/status
Gets the current status of the archetype in CKM.
getCurrentArchetypeStatus 1 param → 200400403404
GET
/archetypes/{cid-archetype}/status/{asset-version}
Gets the status of the archetype in CKM for the specified asset version (i.e. revision).
getArchetypeStatusAtVersion 2 params → 200400403404
GET
/archetypes/{cid-archetype}/project
Gets the CKM project of the archetype.
getProjectOfArchetype 1 param → 200400404
GET
/archetypes
Lists a selection of archetypes in CKM.
listArchetypes 16 params → 200400
POST
/archetypes
Imports a new archetype into a CKM project. Archetypes are imported using the import type "Create new archetype". Therefore, if you want to create a fork of the archetype, please upload the archetype…
importArchetype 3 params → 201400403
GET
/archetypes/{cid-archetype}
Gets the main data of one archetype.
getArchetypeAsCKMResource 5 params → 200400404
PUT
/archetypes/{cid-archetype}
Updates the stated archetype on the trunk. NB: Only archetypes that have NOT been published can be updated using the API. The submitted archetype MUST NOT change the current copyright or original nam…
updateArchetypeOnTrunk 5 params → 200400403404412
DELETE
/archetypes/{cid-archetype}
PERMANENTLY and IRREVOCABLY DELETES the specified archetype in CKM. For a trunk archetype, this will also PERMANENTLY DESTROY EVERYTHING that depends on this resource, including its branches, review…
deleteArchetype 3 params → 204400403404
GET
/archetypes/{cid-archetype}/adl
Gets the specified archetype in ADL format.
getArchetypeInADL 4 params → 200400404
GET
/archetypes/{cid-archetype}/xml
Gets the specified archetype in XML format.
getArchetypeInXML 4 params → 200400404
GET
/archetypes/{cid-archetype}/mindmap
getArchetypeMindmap 6 params → 200400404
Change Requests 2

Endpoint for change request-related services, including listing and getting change requests.

GET
/change-requests
Lists all or a selection of change requests.
listChangeRequests 8 params → 200400
GET
/change-requests/{cid}
Gets one change request.
getChangeRequest 1 param → 200400404
Projects 2

Endpoint for project-related services, including listing and getting projects.

GET
/projects/{cid-project}
Gets the specified CKM project.
getProject 1 param → 200400404
GET
/projects
Lists all or a selection of CKM projects (full projects and incubators).
listProjects 6 params → 200400404
Resource Proposals 2

Endpoint for resource proposal-related services, including listing and getting resource proposals.

GET
/resource-proposals
Lists all or a selection of resource proposals.
listResourceProposals 5 params → 200400
GET
/resource-proposals/{cid}
Gets one resource proposal.
getResourceProposal 1 param → 200400404
Resources 4

Endpoint for generic resources, including archetypes and templates. May sometimes be easier to use.

GET
/resources/publisher-namespace
Gets the currently configured publisher namespace for this CKM instance.
PublisherNamespace → 200400
GET
/resources/{cid-resource}
Gets a CKM Resource. Can be used for both an archetype or a template.
getCKMResource 3 params → 200400404
GET
/resources/{cid-resource}/status
Gets the current status of the archetype or template in CKM.
getCurrentStatus 1 param → 200400403404
GET
/resources/{cid-resource}/status/{asset-version}
Gets the status of the archetype or template in CKM for the specified asset version (i.e. revision).
getStatusAtVersion 2 params → 200400403404
Sessions 3

Endpoint for creating a new user session or signing out.

GET
/sessions
Gets details about the current user, as identified by the session / security context.
getCurrentUser → 200401
POST
/sessions
Sign in the user using basic authentication. The authentication header must be set accordingly for this. Note that in addition each api operation can be used to authenticate directly.
signIn → 200401
DELETE
/sessions
Sign out the user of the session.
signOut → 204401
Subdomains 3

Endpoint for subdomain-related services, including listing and getting subdomains.

GET
/subdomains/{cid-subdomain}
Gets the main data of one CKM subdomain.
getSubdomain 1 param → 200400404
GET
/subdomains
Lists the CKM subdomains.
listSubdomains → 200400
GET
/subdomains/{cid-subdomain}/projects
Gets the main data of all projects (full projects and incubators) of a specified CKM subdomain. Private incubators are only returned if accessible by the current user, if any. For more options, use t…
listProjectsOfSubdomain 1 param → 200400404
Templates 17

Endpoint for template-related services, including listing and getting templates.

GET
/templates
Lists all or a selection of templates in CKM.
listTemplates 16 params → 200400
POST
/templates
Imports a new template into a CKM project. It is recommended to request the template validation report beforehand.
importTemplate 5 params → 201400403424
GET
/templates/{cid-template}
Gets the main data of one template.
getTemplateAsCKMResource 3 params → 200400404
PUT
/templates/{cid-template}
Updates the specified template on the trunk. It is recommended to request the template validation report beforehand.
updateTemplateOnTrunk 7 params → 200400403404412424
DELETE
/templates/{cid-template}
PERMANENTLY and IRREVOCABLY DELETES the specified template in CKM. For a trunk template, this will also PERMANENTLY DESTROY EVERYTHING that depends on this resource, including its branches, review ro…
deleteTemplate 3 params → 204400403404
GET
/templates/{cid-template}/embedded-templates
Lists the templates embedded in the specified template, if any.
listEmbeddedTemplates 4 params → 200400404
GET
/templates/{cid-template}/required-archetypes
Lists the archetypes required for (i.e. used by) the specified template.
listRequiredArchetypesForTemplate 4 params → 200400404
GET
/templates/{cid-template}/oet
Gets the specified template in OET format.
getTemplateOET 3 params → 200400404
GET
/templates/{cid-template}/opt
Gets the operational template (OPT) for the specified template.
getTemplateOPT 3 params → 200400404
GET
/templates/{cid-template}/hash
Gets the MD5 hash of the specified template in OET format.
getTemplateOETHash 3 params → 200400404
GET
/templates/{cid-template}/file-set-url
Gets the URL for a file set of the template. The file set contains all relevant archetypes and templates. Note: For resources in private incubators, the session id must still be valid when requesting…
getTemplateFileSetURL 3 params → 200400404
GET
/templates/{cid-template}/status
Gets the current status of the template in CKM.
getCurrentTemplateStatus 1 param → 200400403404
PUT
/templates/{cid-template}/status
Updates the status of the specified trunk template.
updateTemplateStatus 5 params → 200400403404412
POST
/templates/validation-report
Gets CKM's template validation report for the template provided as OET. Validates if all required resources are present and used in the latest revision on the trunk. Note: This is a POST call, not a…
getValidationReportForTemplate 2 params → 200400401403
GET
/templates/{cid-template}/status/{asset-version}
Gets the status of the template in CKM for the specified asset version (i.e. revision).
getTemplateStatusAtVersion 2 params → 200400403404
GET
/templates/{cid-template}/project
Gets the CKM project of the template.
getProjectOfTemplate 1 param → 200400404
GET
/templates/citeable-identifier/{template-id}
Gets the citeable identifier of a template based on the specified template id.
getCiteableIdentifierForTemplateId 1 param → 200400404
Users 1

Endpoint for user-related services, including creating new users as an admin.

POST
/users
Creates a new user. The stated username must match the firstName and lastName (firstname.lastname), ignoring case and removing whitespace. If successful, depending on the value of hasToActivate, eith…
createUser 1 param → 201400403

Schemas 8

The contract defines 8 schemas that model the data the API accepts and returns. The most detailed are TemplateValidationItem (21 properties), CkmResource (20 properties), ChangeRequest (15 properties), ResourceProposal (15 properties). Each schema is shown below with its type and property counts.

CkmResource
object
Contains the relevant main data to describe a CKM resource such as an archetype or a template.
20 properties
Project
object
9 properties
ChangeRequest
object
15 properties
ResourceProposal
object
15 properties
User
object
Essential information about the user, including the session.
5 properties
Subdomain
object
4 properties
TemplateValidationItem
object
21 properties
NewUser
object
Contains the relevant main data used to create a new user in CKM.
12 properties 5 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

ocean-health-systems-ckm-rest-api-openapi.json Raw ↑
Where this information came from

This is an independent, third-party profile of CKM REST API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.