Group Account Note Integration Point

This integration point provides the ability to:

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

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

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

  • 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 Account 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 Account 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 Account to the following URI:

http://<hostname>:<port>/<context>/generic/groupaccountnotes/{subject}

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

{
  "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

It is essential to send a POST request to the following URI for creating a fresh note for a Group Account:

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

The subject is the technical ID of the Group Account. It is essential to provide the note text in the request payload. One may 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.