Demographic API (development)

Description

Purpose

This specification describes service endpoints, resources and operations as well as details of requests and responses that interacts with Demographic openEHR API in a RESTful manner.

Prerequisite documents for reading this document include:

Related documents include:

Status

This specification is in the DEVELOPMENT state, and can be downloaded as OpenAPI specification file (in YAML format) for validation, or for code generators. Users are encouraged to comment on and/or advise on these paragraphs as well as the main content.

The development version of this document can be found at https://specifications.openehr.org/releases/ITS-REST/development/demographic.html.

AGENT

Management of the AGENT class.

Create AGENT

Creates the first version of a new AGENT.

header Parameters
Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The AGENT.

_type
string
Value: "AGENT"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "AGENT",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "AGENT",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Get AGENT

Retrieves a version of the AGENT identified by uid_based_id.

The 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). The former is used to retrieve a specific known version of the AGENT (e.g. one identified by 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.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).

When 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.

See Resource identification for more details about the identifiers usage and meaning.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An abstract identifier: it 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).

query Parameters
version_at_time
string
Example: version_at_time=2015-01-20T19:30:22.765+01:00

A given time in the extended ISO 8601 format.

Responses

Response samples

Content type
application/json
{
  • "_type": "AGENT",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Update AGENT

Updates AGENT identified by uid_based_id.

The 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).

If the request body already contains a AGENT.uid.value, it must match the uid_based_id in the URL.

The existing latest version_uid of AGENT resource (i.e. the preceding_version_uid) must be specified in the If-Match header.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515

An identifier in a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a versioned_object_uid).

header Parameters
If-Match
required
string
Example: "6cb19121-4307-4648-9da0-d62e4d51f19b::openEHRSys.example.com::1"

Header to make the request conditional. Together with ETag request tag, it helps to prevent simultaneous updates of a resource from overwriting each other ("mid-air collisions"). The format is always an version_uid identifier enclosed by double quotes. The operation will be performed only if the existing latest version_uid of the resource (i.e. the preceding_version_uid) matches this header's value.

Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The new AGENT.

_type
string
Value: "AGENT"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "AGENT",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "AGENT",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Delete AGENT

Deletes the AGENT identified by uid_based_id.

The 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.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An identifier in a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a version_uid).

Responses

GROUP

Management of the GROUP class.

Create GROUP

Creates the first version of a new GROUP.

header Parameters
Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The GROUP.

_type
string
Value: "GROUP"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "GROUP",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "GROUP",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Get GROUP

Retrieves a version of the GROUP identified by uid_based_id.

The 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). The former is used to retrieve a specific known version of the GROUP (e.g. one identified by 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.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).

When 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.

See Resource identification for more details about the identifiers usage and meaning.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An abstract identifier: it 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).

query Parameters
version_at_time
string
Example: version_at_time=2015-01-20T19:30:22.765+01:00

A given time in the extended ISO 8601 format.

Responses

Response samples

Content type
application/json
{
  • "_type": "GROUP",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Update GROUP

Updates GROUP identified by uid_based_id.

The 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).

If the request body already contains a GROUP.uid.value, it must match the uid_based_id in the URL.

The existing latest version_uid of GROUP resource (i.e. the preceding_version_uid) must be specified in the If-Match header.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515

An identifier in a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a versioned_object_uid).

header Parameters
If-Match
required
string
Example: "6cb19121-4307-4648-9da0-d62e4d51f19b::openEHRSys.example.com::1"

Header to make the request conditional. Together with ETag request tag, it helps to prevent simultaneous updates of a resource from overwriting each other ("mid-air collisions"). The format is always an version_uid identifier enclosed by double quotes. The operation will be performed only if the existing latest version_uid of the resource (i.e. the preceding_version_uid) matches this header's value.

Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The new GROUP.

_type
string
Value: "GROUP"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "GROUP",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "GROUP",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Delete GROUP

Deletes the GROUP identified by uid_based_id.

The 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.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An identifier in a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a version_uid).

Responses

ORGANISATION

Management of the ORGANISATION class.

Create ORGANISATION

Creates the first version of a new ORGANISATION.

header Parameters
Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The ORGANISATION.

_type
string
Value: "ORGANISATION"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "ORGANISATION",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "ORGANISATION",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Get ORGANISATION

Retrieves a version of the ORGANISATION identified by uid_based_id.

The 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). The former is used to retrieve a specific known version of the ORGANISATION (e.g. one identified by 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.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).

When 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.

See Resource identification for more details about the identifiers usage and meaning.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An abstract identifier: it 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).

query Parameters
version_at_time
string
Example: version_at_time=2015-01-20T19:30:22.765+01:00

A given time in the extended ISO 8601 format.

Responses

Response samples

Content type
application/json
{
  • "_type": "ORGANISATION",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Update ORGANISATION

Updates ORGANISATION identified by uid_based_id.

The 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).

If the request body already contains a ORGANISATION.uid.value, it must match the uid_based_id in the URL.

The existing latest version_uid of ORGANISATION resource (i.e. the preceding_version_uid) must be specified in the If-Match header.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515

An identifier in a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a versioned_object_uid).

header Parameters
If-Match
required
string
Example: "6cb19121-4307-4648-9da0-d62e4d51f19b::openEHRSys.example.com::1"

Header to make the request conditional. Together with ETag request tag, it helps to prevent simultaneous updates of a resource from overwriting each other ("mid-air collisions"). The format is always an version_uid identifier enclosed by double quotes. The operation will be performed only if the existing latest version_uid of the resource (i.e. the preceding_version_uid) matches this header's value.

Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The new ORGANISATION.

_type
string
Value: "ORGANISATION"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "ORGANISATION",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "ORGANISATION",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Delete ORGANISATION

Deletes the ORGANISATION identified by uid_based_id.

The 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.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An identifier in a form of an OBJECT_VERSION_ID identifier taken from VERSION.uid.value (i.e. a version_uid).

Responses

PERSON

Management of the PERSON class.

Create PERSON

Creates the first version of a new PERSON.

header Parameters
Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The PERSON.

_type
string
Value: "PERSON"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)
object (FEEDER_AUDIT)
identities
required
Array of objects (PARTY_IDENTITY)

See PARTY_IDENTITY schema details.

contacts
Array of objects (CONTACT)

See CONTACT schema details.

details
object (ITEM_STRUCTURE)

See ITEM_STRUCTURE schema details.

relationships
Array of objects (PARTY_RELATIONSHIP)

See PARTY_RELATIONSHIP schema details.

Array of objects (DV_TEXT)
Array of objects (PARTY_REF)

Responses

Request samples

Content type
application/json
{
  • "_type": "PERSON",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "_type": "PERSON",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Get PERSON

Retrieves a version of the PERSON identified by uid_based_id.

The 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). The former is used to retrieve a specific known version of the PERSON (e.g. one identified by 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.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).

When 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.

See Resource identification for more details about the identifiers usage and meaning.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1

An abstract identifier: it 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).

query Parameters
version_at_time
string
Example: version_at_time=2015-01-20T19:30:22.765+01:00

A given time in the extended ISO 8601 format.

Responses

Response samples

Content type
application/json
{
  • "_type": "PERSON",
  • "name": {
    },
  • "archetype_node_id": "string",
  • "uid": {
    },
  • "links": [
    ],
  • "archetype_details": {
    },
  • "feeder_audit": {
    },
  • "identities": [
    ],
  • "contacts": [
    ],
  • "details": { },
  • "relationships": [
    ],
  • "languages": [
    ],
  • "roles": [
    ]
}

Update PERSON

Updates PERSON identified by uid_based_id.

The 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).

If the request body already contains a PERSON.uid.value, it must match the uid_based_id in the URL.

The existing latest version_uid of PERSON resource (i.e. the preceding_version_uid) must be specified in the If-Match header.

path Parameters
uid_based_id
required
string
Example: 8849182c-82ad-4088-a07f-48ead4180515

An identifier in a form of a HIER_OBJECT_ID identifier taken from VERSIONED_OBJECT.uid.value (i.e. a versioned_object_uid).

header Parameters
If-Match
required
string
Example: "6cb19121-4307-4648-9da0-d62e4d51f19b::openEHRSys.example.com::1"

Header to make the request conditional. Together with ETag request tag, it helps to prevent simultaneous updates of a resource from overwriting each other ("mid-air collisions"). The format is always an version_uid identifier enclosed by double quotes. The operation will be performed only if the existing latest version_uid of the resource (i.e. the preceding_version_uid) matches this header's value.

Prefer
string
Default: return=minimal
Enum: "return=representation" "return=minimal"

Request header to indicate the preference over response details. The response will contain the entire resource when the Prefer header has a value of return=representation.

Request Body schema: application/json
required

The new PERSON.

_type
string
Value: "PERSON"
required
object (DV_TEXT)
archetype_node_id
required
string
object (UID_BASED_ID)
Array of objects (LINK)
object (ARCHETYPED)