Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.1.1",
"info": {
"title": "Demographic API",
"version": "development",
"x-status": "DEVELOPMENT",
"x-spec": "demographic"
},
"servers": [
{
"url": "https://{baseUrl}/v1",
"description": "An example openEHR server URL.",
"variables": {
"baseUrl": {
"default": "cataniamc.prod.cadasto.com",
"description": "The (example) server base URL prefix providing openEHR services. This may contain server name, port and base path prefix."
}
}
}
],
"security": [],
"tags": [
{
"name": "AGENT",
"description": "Management of the [AGENT](https://specifications.openehr.org/releases/RM/latest/demographic.html#_agent_class) class.\n"
},
{
"name": "GROUP",
"description": "Management of the [GROUP](https://specifications.openehr.org/releases/RM/latest/demographic.html#_group_class) class.\n"
},
{
"name": "ORGANISATION",
"description": "Management of the [ORGANISATION](https://specifications.openehr.org/releases/RM/latest/demographic.html#_organisation_class) class.\n"
},
{
"name": "PERSON",
"description": "Management of the [PERSON](https://specifications.openehr.org/releases/RM/latest/demographic.html#_person_class) class.\n"
},
{
"name": "ROLE",
"description": "Management of the [ROLE](https://specifications.openehr.org/releases/RM/latest/demographic.html#_role_class) class.\n"
},
{
"name": "VERSIONED_PARTY",
"description": "Management of the [VERSIONED_PARTY](https://specifications.openehr.org/releases/RM/latest/demographic.html#_versioned_party_class) class.\n"
},
{
"name": "CONTRIBUTION",
"description": "Management of [CONTRIBUTION](https://specifications.openehr.org/releases/RM/latest/common.html#_contribution_class) class.\n"
},
{
"name": "ITEM_TAG",
"description": "Management of [ITEM_TAG](https://specifications.openehr.org/releases/RM/latest/common.html#_item_tag_class) resources attached to demographic versioned objects (PERSON, AGENT, GROUP, ORGANISATION, ROLE). See also the [ITEM_TAG guide](/docs/guides/item-tag).\n"
},
{
"name": "CAPABILITY_schema",
"x-displayName": "CAPABILITY",
"description": "The `CAPABILITY` schema, formally specified in the Reference Model as the [CAPABILITY](https://specifications.openehr.org/releases/RM/latest/demographic.html#_capability_class) class.\n"
},
{
"name": "CONTACT_schema",
"x-displayName": "CONTACT",
"description": "The `CONTACT` schema, formally specified in the Reference Model as the [CONTACT](https://specifications.openehr.org/releases/RM/latest/demographic.html#_contact_class) class.\n"
},
{
"name": "PARTY_IDENTITY_schema",
"x-displayName": "PARTY_IDENTITY",
"description": "The `PARTY_IDENTITY` schema, formally specified in the Reference Model as the [PARTY_IDENTITY](https://specifications.openehr.org/releases/RM/latest/demographic.html#_party_identity_class) class.\n"
},
{
"name": "PARTY_RELATIONSHIP_schema",
"x-displayName": "PARTY_RELATIONSHIP",
"description": "The `PARTY_RELATIONSHIP` resource, formally specified in the Reference Model as the [PARTY_RELATIONSHIP](https://specifications.openehr.org/releases/RM/latest/demographic.html#_party_relationship_class) class.\n"
},
{
"name": "ITEM_schema",
"x-displayName": "ITEM",
"description": "The abstract `ITEM` class.\n"
},
{
"name": "ITEM_STRUCTURE_schema",
"x-displayName": "ITEM_STRUCTURE",
"description": "The abstract `ITEM_STRUCTURE` class.\n"
}
],
"paths": {
"/demographic/agent": {
"post": {
"operationId": "agent_create",
"summary": "Create AGENT",
"description": "Creates the first version of a new AGENT.\n",
"tags": [
"AGENT"
],
"parameters": [
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The AGENT.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Agent"
}
}
},
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201_AGENT"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"422": {
"$ref": "#/components/responses/422"
}
}
}
},
"/demographic/agent/{uid_based_id}": {
"get": {
"operationId": "agent_get",
"summary": "Get AGENT",
"description": "Retrieves a version of the AGENT identified by `uid_based_id`.\n\nThe `uid_based_id` can take a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a `version_uid`), or a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\nThe former is used to retrieve a specific known version of the AGENT (e.g. one identified by `8849182c-82ad-4088-a07f-48ead4180515::cataniamc.prod.cadasto.com::1`), whereas the later (e.g. an identifier like `8849182c-82ad-4088-a07f-48ead4180515`) is be used to retrieve a version from the version container whenever the _version_tree_id_ is unknown or irrelevant (such as when most recent version is requested).\n\nWhen the `uid_based_id` has the form of a HIER_OBJECT_ID, if the `version_at_time` is supplied, retrieves the version extant _at specified time_, otherwise retrieves the _latest_ AGENT version.\n\nSee [Resource identification](overview.html#tag/Resources/Resource-identification) for more details about the identifiers usage and meaning.\n",
"tags": [
"AGENT"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id"
},
{
"$ref": "#/components/parameters/version_at_time"
},
{
"$ref": "#/components/parameters/Prefer"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200_AGENT_retrieved"
},
"204": {
"$ref": "#/components/responses/204_deleted_at_time"
},
"404": {
"$ref": "#/components/responses/404_not_found_or_no_version_at_time"
}
}
},
"put": {
"operationId": "agent_update",
"summary": "Update AGENT",
"description": "Updates AGENT identified by `uid_based_id`.\n\nThe `uid_based_id` can take only a form of an HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\n\nIf the request body already contains a AGENT.uid.value, it must match the `uid_based_id` in the URL. \n\nThe existing latest `version_uid` of AGENT resource (i.e. the `preceding_version_uid`) must be specified in the `If-Match` header.\n",
"tags": [
"AGENT"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_versioned_object_uid"
},
{
"$ref": "#/components/parameters/If-Match"
},
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The new AGENT.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Agent"
}
}
},
"required": true
},
"responses": {
"200": {
"$ref": "#/components/responses/200_AGENT_updated"
},
"204": {
"$ref": "#/components/responses/204_version_updated"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"412": {
"$ref": "#/components/responses/412_AGENT"
},
"422": {
"$ref": "#/components/responses/422"
}
}
},
"delete": {
"operationId": "agent_delete",
"summary": "Delete AGENT",
"description": "Deletes the AGENT identified by `uid_based_id`.\n\nThe `uid_based_id` MUST be in a form of an OBJECT_VERSION_ID identifier taken from the last (most recent) VERSION.uid.value, representing the `preceding_version_uid` to be deleted.\n",
"tags": [
"AGENT"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_version_uid"
}
],
"responses": {
"204": {
"$ref": "#/components/responses/204_version_deleted"
},
"400": {
"$ref": "#/components/responses/400_already_deleted"
},
"404": {
"$ref": "#/components/responses/404"
},
"409": {
"$ref": "#/components/responses/409_AGENT_with_uid_based_id"
}
}
}
},
"/demographic/group": {
"post": {
"operationId": "group_create",
"summary": "Create GROUP",
"description": "Creates the first version of a new GROUP.\n",
"tags": [
"GROUP"
],
"parameters": [
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The GROUP.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Group"
}
}
},
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201_GROUP"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"422": {
"$ref": "#/components/responses/422"
}
}
}
},
"/demographic/group/{uid_based_id}": {
"get": {
"operationId": "group_get",
"summary": "Get GROUP",
"description": "Retrieves a version of the GROUP identified by `uid_based_id`.\n\nThe `uid_based_id` can take a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a `version_uid`), or a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\nThe former is used to retrieve a specific known version of the GROUP (e.g. one identified by `8849182c-82ad-4088-a07f-48ead4180515::cataniamc.prod.cadasto.com::1`), whereas the later (e.g. an identifier like `8849182c-82ad-4088-a07f-48ead4180515`) is be used to retrieve a version from the version container whenever the _version_tree_id_ is unknown or irrelevant (such as when most recent version is requested).\n\nWhen the `uid_based_id` has the form of a HIER_OBJECT_ID, if the `version_at_time` is supplied, retrieves the version extant _at specified time_, otherwise retrieves the _latest_ GROUP version.\n\nSee [Resource identification](overview.html#tag/Resources/Resource-identification) for more details about the identifiers usage and meaning.\n",
"tags": [
"GROUP"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id"
},
{
"$ref": "#/components/parameters/version_at_time"
},
{
"$ref": "#/components/parameters/Prefer"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200_GROUP_retrieved"
},
"204": {
"$ref": "#/components/responses/204_deleted_at_time"
},
"404": {
"$ref": "#/components/responses/404_not_found_or_no_version_at_time"
}
}
},
"put": {
"operationId": "group_update",
"summary": "Update GROUP",
"description": "Updates GROUP identified by `uid_based_id`.\n\nThe `uid_based_id` can take only a form of an HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\n\nIf the request body already contains a GROUP.uid.value, it must match the `uid_based_id` in the URL. \n\nThe existing latest `version_uid` of GROUP resource (i.e. the `preceding_version_uid`) must be specified in the `If-Match` header.\n",
"tags": [
"GROUP"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_versioned_object_uid"
},
{
"$ref": "#/components/parameters/If-Match"
},
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The new GROUP.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Group"
}
}
},
"required": true
},
"responses": {
"200": {
"$ref": "#/components/responses/200_GROUP_updated"
},
"204": {
"$ref": "#/components/responses/204_version_updated"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"412": {
"$ref": "#/components/responses/412_GROUP"
},
"422": {
"$ref": "#/components/responses/422"
}
}
},
"delete": {
"operationId": "group_delete",
"summary": "Delete GROUP",
"description": "Deletes the GROUP identified by `uid_based_id`.\n\nThe `uid_based_id` MUST be in a form of an OBJECT_VERSION_ID identifier taken from the last (most recent) VERSION.uid.value, representing the `preceding_version_uid` to be deleted.\n",
"tags": [
"GROUP"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_version_uid"
}
],
"responses": {
"204": {
"$ref": "#/components/responses/204_version_deleted"
},
"400": {
"$ref": "#/components/responses/400_already_deleted"
},
"404": {
"$ref": "#/components/responses/404"
},
"409": {
"$ref": "#/components/responses/409_GROUP_with_uid_based_id"
}
}
}
},
"/demographic/organisation": {
"post": {
"operationId": "organisation_create",
"summary": "Create ORGANISATION",
"description": "Creates the first version of a new ORGANISATION.\n",
"tags": [
"ORGANISATION"
],
"parameters": [
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The ORGANISATION.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Organisation"
}
}
},
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201_ORGANISATION"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"422": {
"$ref": "#/components/responses/422"
}
}
}
},
"/demographic/organisation/{uid_based_id}": {
"get": {
"operationId": "organisation_get",
"summary": "Get ORGANISATION",
"description": "Retrieves a version of the ORGANISATION identified by `uid_based_id`.\n\nThe `uid_based_id` can take a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a `version_uid`), or a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\nThe former is used to retrieve a specific known version of the ORGANISATION (e.g. one identified by `8849182c-82ad-4088-a07f-48ead4180515::cataniamc.prod.cadasto.com::1`), whereas the later (e.g. an identifier like `8849182c-82ad-4088-a07f-48ead4180515`) is be used to retrieve a version from the version container whenever the _version_tree_id_ is unknown or irrelevant (such as when most recent version is requested).\n\nWhen the `uid_based_id` has the form of a HIER_OBJECT_ID, if the `version_at_time` is supplied, retrieves the version extant _at specified time_, otherwise retrieves the _latest_ ORGANISATION version.\n\nSee [Resource identification](overview.html#tag/Resources/Resource-identification) for more details about the identifiers usage and meaning.\n",
"tags": [
"ORGANISATION"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id"
},
{
"$ref": "#/components/parameters/version_at_time"
},
{
"$ref": "#/components/parameters/Prefer"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200_ORGANISATION_retrieved"
},
"204": {
"$ref": "#/components/responses/204_deleted_at_time"
},
"404": {
"$ref": "#/components/responses/404_not_found_or_no_version_at_time"
}
}
},
"put": {
"operationId": "organisation_update",
"summary": "Update ORGANISATION",
"description": "Updates ORGANISATION identified by `uid_based_id`.\n\nThe `uid_based_id` can take only a form of an HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\n\nIf the request body already contains a ORGANISATION.uid.value, it must match the `uid_based_id` in the URL. \n\nThe existing latest `version_uid` of ORGANISATION resource (i.e. the `preceding_version_uid`) must be specified in the `If-Match` header.\n",
"tags": [
"ORGANISATION"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_versioned_object_uid"
},
{
"$ref": "#/components/parameters/If-Match"
},
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The new ORGANISATION.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Organisation"
}
}
},
"required": true
},
"responses": {
"200": {
"$ref": "#/components/responses/200_ORGANISATION_updated"
},
"204": {
"$ref": "#/components/responses/204_version_updated"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"412": {
"$ref": "#/components/responses/412_ORGANISATION"
},
"422": {
"$ref": "#/components/responses/422"
}
}
},
"delete": {
"operationId": "organisation_delete",
"summary": "Delete ORGANISATION",
"description": "Deletes the ORGANISATION identified by `uid_based_id`.\n\nThe `uid_based_id` MUST be in a form of an OBJECT_VERSION_ID identifier taken from the last (most recent) VERSION.uid.value, representing the `preceding_version_uid` to be deleted.\n",
"tags": [
"ORGANISATION"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_version_uid"
}
],
"responses": {
"204": {
"$ref": "#/components/responses/204_version_deleted"
},
"400": {
"$ref": "#/components/responses/400_already_deleted"
},
"404": {
"$ref": "#/components/responses/404"
},
"409": {
"$ref": "#/components/responses/409_ORGANISATION_with_uid_based_id"
}
}
}
},
"/demographic/person": {
"post": {
"operationId": "person_create",
"summary": "Create PERSON",
"description": "Creates the first version of a new PERSON.\n",
"tags": [
"PERSON"
],
"parameters": [
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The PERSON.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Person"
}
}
},
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201_PERSON"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"422": {
"$ref": "#/components/responses/422"
}
}
}
},
"/demographic/person/{uid_based_id}": {
"get": {
"operationId": "person_get",
"summary": "Get PERSON",
"description": "Retrieves a version of the PERSON identified by `uid_based_id`.\n\nThe `uid_based_id` can take a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a `version_uid`), or a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\nThe former is used to retrieve a specific known version of the PERSON (e.g. one identified by `8849182c-82ad-4088-a07f-48ead4180515::cataniamc.prod.cadasto.com::1`), whereas the later (e.g. an identifier like `8849182c-82ad-4088-a07f-48ead4180515`) is be used to retrieve a version from the version container whenever the _version_tree_id_ is unknown or irrelevant (such as when most recent version is requested).\n\nWhen the `uid_based_id` has the form of a HIER_OBJECT_ID, if the `version_at_time` is supplied, retrieves the version extant _at specified time_, otherwise retrieves the _latest_ PERSON version.\n\nSee [Resource identification](overview.html#tag/Resources/Resource-identification) for more details about the identifiers usage and meaning.\n",
"tags": [
"PERSON"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id"
},
{
"$ref": "#/components/parameters/version_at_time"
},
{
"$ref": "#/components/parameters/Prefer"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200_PERSON_retrieved"
},
"204": {
"$ref": "#/components/responses/204_deleted_at_time"
},
"404": {
"$ref": "#/components/responses/404_not_found_or_no_version_at_time"
}
}
},
"put": {
"operationId": "person_update",
"summary": "Update PERSON",
"description": "Updates PERSON identified by `uid_based_id`.\n\nThe `uid_based_id` can take only a form of an HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\n\nIf the request body already contains a PERSON.uid.value, it must match the `uid_based_id` in the URL. \n\nThe existing latest `version_uid` of PERSON resource (i.e. the `preceding_version_uid`) must be specified in the `If-Match` header.\n",
"tags": [
"PERSON"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_versioned_object_uid"
},
{
"$ref": "#/components/parameters/If-Match"
},
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The new PERSON.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Person"
}
}
},
"required": true
},
"responses": {
"200": {
"$ref": "#/components/responses/200_PERSON_updated"
},
"204": {
"$ref": "#/components/responses/204_version_updated"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"412": {
"$ref": "#/components/responses/412_PERSON"
},
"422": {
"$ref": "#/components/responses/422"
}
}
},
"delete": {
"operationId": "person_delete",
"summary": "Delete PERSON",
"description": "Deletes the PERSON identified by `uid_based_id`.\n\nThe `uid_based_id` MUST be in a form of an OBJECT_VERSION_ID identifier taken from the last (most recent) VERSION.uid.value, representing the `preceding_version_uid` to be deleted.\n",
"tags": [
"PERSON"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_version_uid"
}
],
"responses": {
"204": {
"$ref": "#/components/responses/204_version_deleted"
},
"400": {
"$ref": "#/components/responses/400_already_deleted"
},
"404": {
"$ref": "#/components/responses/404"
},
"409": {
"$ref": "#/components/responses/409_PERSON_with_uid_based_id"
}
}
}
},
"/demographic/role": {
"post": {
"operationId": "role_create",
"summary": "Create ROLE",
"description": "Creates the first version of a new ROLE.\n",
"tags": [
"ROLE"
],
"parameters": [
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The ROLE.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Role"
}
}
},
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201_ROLE"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"422": {
"$ref": "#/components/responses/422"
}
}
}
},
"/demographic/role/{uid_based_id}": {
"get": {
"operationId": "role_get",
"summary": "Get ROLE",
"description": "Retrieves a version of the ROLE identified by `uid_based_id`.\n\nThe `uid_based_id` can take a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a `version_uid`), or a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\nThe former is used to retrieve a specific known version of the ROLE (e.g. one identified by `8849182c-82ad-4088-a07f-48ead4180515::cataniamc.prod.cadasto.com::1`), whereas the later (e.g. an identifier like `8849182c-82ad-4088-a07f-48ead4180515`) is be used to retrieve a version from the version container whenever the _version_tree_id_ is unknown or irrelevant (such as when most recent version is requested).\n\nWhen the `uid_based_id` has the form of a HIER_OBJECT_ID, if the `version_at_time` is supplied, retrieves the version extant _at specified time_, otherwise retrieves the _latest_ ROLE version.\n\nSee [Resource identification](overview.html#tag/Resources/Resource-identification) for more details about the identifiers usage and meaning.\n",
"tags": [
"ROLE"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id"
},
{
"$ref": "#/components/parameters/version_at_time"
},
{
"$ref": "#/components/parameters/Prefer"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200_ROLE_retrieved"
},
"204": {
"$ref": "#/components/responses/204_deleted_at_time"
},
"404": {
"$ref": "#/components/responses/404_not_found_or_no_version_at_time"
}
}
},
"put": {
"operationId": "role_update",
"summary": "Update ROLE",
"description": "Updates ROLE identified by `uid_based_id`.\n\nThe `uid_based_id` can take only a form of an HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a `versioned_object_uid`).\n\nIf the request body already contains a ROLE.uid.value, it must match the `uid_based_id` in the URL. \n\nThe existing latest `version_uid` of ROLE resource (i.e. the `preceding_version_uid`) must be specified in the `If-Match` header.\n",
"tags": [
"ROLE"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_versioned_object_uid"
},
{
"$ref": "#/components/parameters/If-Match"
},
{
"$ref": "#/components/parameters/Prefer"
},
{
"$ref": "#/components/parameters/openehr-item-tag"
}
],
"requestBody": {
"description": "The new ROLE.\n",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Role"
}
}
},
"required": true
},
"responses": {
"200": {
"$ref": "#/components/responses/200_ROLE_updated"
},
"204": {
"$ref": "#/components/responses/204_version_updated"
},
"400": {
"$ref": "#/components/responses/400"
},
"404": {
"$ref": "#/components/responses/404"
},
"412": {
"$ref": "#/components/responses/412_ROLE"
},
"422": {
"$ref": "#/components/responses/422"
}
}
},
"delete": {
"operationId": "role_delete",
"summary": "Delete ROLE",
"description": "Deletes the ROLE identified by `uid_based_id`.\n\nThe `uid_based_id` MUST be in a form of an OBJECT_VERSION_ID identifier taken from the last (most recent) VERSION.uid.value, representing the `preceding_version_uid` to be deleted.\n",
"tags": [
"ROLE"
],
"parameters": [
{
"$ref": "#/components/parameters/uid_based_id_as_version_uid"
}
],
"responses": {
"204": {
"$ref": "#/components/responses/204_version_deleted"
},
"400": {
"$ref": "#/components/responses/400_already_deleted"
},
"404": {
"$ref": "#/components/responses/404"
},
"409": {
"$ref": "#/components/responses/409_ROLE_with_uid
# --- truncated at 32 KB (172 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cadasto/refs/heads/main/openapi/cadasto-demographic-api-openapi.json