Group Client Note Integration Point

This integration point provides the ability to:

  • Retrieve (GET) the notes of a Group Client.

  • Retrieve (GET) the versions of an existing note.

  • Create (POST) a fresh note for a Group Client.

  • Update (POST) an existing note to create a new version of an existing note.

These different integration point operations are described in the sections below. The integration point will provide HTTP status codes as defined in Response Messages.

The HTTP API access restriction Group Client Notes API protects the operations. GET operations requires a grant with a preset Read flag. POST operations require a grant with a preset Create flag. Note that performing this action requires a grant for the data access group restriction restricting the access to the Group Client to which the note belongs. The grant must have Read (for the GET operations) and Update (for the POST operations) flags set.

Retrieve Notes

It is important to send a GET request to retrieve the notes of a Group Client to the following URI:

http://<hostname>:<port>/<context>/generic/groupclientnotes/{subjectId}

The subject ID is the technical ID of the Group Client. The response payload contains a list of all notes (last versions) of a Group Client.

The payload looks like this:

{
  "items": [
    {
      "id": "",
      "version": "",
      "createdBy": "",
      "creationDate": {
        "value": ""
      },
      "lastUpdatedBy": "",
      "lastUpdatedDate": {
        "value": ""
      },
      "noteText": "",
      "customerField1": "",
      "customerField2": ""
      "links": [
        {
          "href": ...,
          "rel": "self"
        },
        {
          "href": ...,
          "rel": "note:edit",
          "httpMethod": "POST"
        },
        {
          "href": ...,
          "rel": "note:audit",
          "httpMethod": "GET"
        }
      ]
    }
  ],
  "links": [
    {
      "href": ...,
      "rel": "self"
    }
  ]
}

Retrieve Note Versions

If a note has multiple versions, the audit link provides the ability to retrieve all versions of that note. The response payload contains a list of all versions of the note. The payload looks like this:

{
  "items": [
    {
      "id": "",
      "version": "",
      "lastVersion": "",
      "createdBy": "",
      "creationDate": {
        "value": ""
      },
      "noteText": "",
      "customerField1": "",
      "customerField2": ""
      "links": [
        {
          "href": ...,
          "rel": "self"
        }
      ]
    }
  ],
  "links": [
    {
      "href": ...,
      "rel": "self"
    }
  ]
}

Create Note

Creating a fresh note for a Group Client requires sending a POST request to the following URI:

http://<hostname>:<port>/<context>/groupclientnotes/{subjectId}

The subject ID is the technical ID of the Group Client. The request payload must have the note text in it. The user can provide values for dynamic fields as well. The payload looks like this:

{
  "noteText": "",
  "customerField1": "",
  "customerField2": ""
}

Update Note

The edit link on a note provides the ability to update a particular note. Updating an existing note creates a new version of that note, existing records of notes do not update. It is important to provide the note text and dynamic field values for the new note version in the request payload. The payload has the same structure as in the Create Note request specified above.