About this resource
Representation of a record.
There is one action on this resource, which is not documented in the relations section
and its purpose is to provide the possibility to download the image (binary stream) of
the record's master file preview or thumbnail.
Properties
Property | Description | Type |
---|---|---|
aiInfluenced | Indicates if this record has contents that was influenced by AI. | string (values: unknown, no, yes) |
contentType | Gets or sets the value for the ContentType of this object. Out of the box options are:
|
string |
createdOn | Gets the creation datetime in UTC time. | datetime |
hasImageOverlay | Gets status which determines whether an image overlay should be shown or not. | boolean |
id | Gets the Id of this record. | guid |
modifiedOn | Gets the last modification datetime in UTC time. | datetime |
status | Gets or sets the Status of this record. Out of the box options are:
|
string (values: draft, released, archived) |
tag | Gets or sets the value for the Tag of this object. The value of this property should be valid Xml. This property will not be returned by default. In order to include the property in the response, add a header with the name 'select-record' and the value 'Tag' to your request. | string |
textContent | Gets the text content of this record. This property will not be returned by default. In order to include the property in the response, add a header with the name 'select-record' and the value 'TextContent' to your request. | string |
title | Gets the display title of the record as configured on the records content type title configuration. This can be the value of a field the filename of the latest master file. This property will not be returned by default. In order to include the property in the response, add a header with the name 'select-record' and the value 'Title' to your request. | string |
Relations
Method | Name | Select-key | Resource type | Description |
---|---|---|---|---|
GET | self | Provides a link to this resource. | ||
GET | fields | select-Record: fields | FieldCollection | Gets the collection containing all the fields of this record. |
GET | files | select-Record: files | FileCollection | Gets the collection containing all the files of this record. |
GET | preview | select-Record: preview | Image | Gets the master preview of the latest version of the master file of this record |
GET | thumbnail | select-Record: thumbnail | Image | Gets the master thumbnail of the latest version of the master file of this record |
GET | masterfile | select-Record: masterfile | File | Gets the file that is the master file of this record |
GET | masterfilelatestversion | select-Record: masterfilelatestversion | FileVersion | Gets the latest version of the master file of this record |
GET | classifications | select-Record: classifications | RecordClassificationCollection | Gets the collection containing all the classifications of this record. |
GET | accesslists | select-Record: accesslists | RecordAccessListCollection | Gets the collection containing all the access lists of this record. |
GET | permissions | select-Record: permissions | RecordPermissions | Gets permissions the user has on this record. |
GET | locks | select-Record: locks | RecordLock | Gets locks on this record. |
GET | analyticsdata | select-Record: analyticsdata | RecordAnalytics | Gets analytics on this record. |
GET | modifiedby | select-Record: modifiedby | User | Gets or sets the user that last modified this resource. |
GET | createdby | select-Record: createdby | User | Gets or sets the user that created this resource. |
Actions
Method | Action | Description | Response codes | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
PUT /record/{recordId} | edit | Edits an existing record. |
|
||||||||
DELETE /record/{recordId} | delete | Deletes an existing record. |
|
||||||||
POST /record/edits | preparedraft | Initiates an edit record session by the client. | |||||||||
POST /record/bulkedits | preparedrafts | Initiates edit record sessions in bulk by the client. | |||||||||
PATCH /record/edits/{editToken} | editdraft | Applies the send changes to the editable record. | |||||||||
PATCH /record/bulkedits | editdrafts | Applies the send changes to the editable records. | |||||||||
POST /record/edits/{editToken} | commitdraft | Applies the send changes to the editable record and saves the changes to the database | |||||||||
PUT /record/bulkedits | commitdrafts | Applies the send changes to the editable records and saves the changes to the database | |||||||||
GET /record/edits/{editToken} | getdraft | Returns the current state of the session | |||||||||
DELETE /record/edits/{editToken} | deletedraft | Deletes the record from the cache. | |||||||||
DELETE /record/bulkedits | deletedrafts | Deletes the edit record sessions from the cache. | |||||||||
POST /record/{recordId}/checkout/prepare | preparecheckout | Prepare check out operation for record | |||||||||
POST /record/{recordId}/undocheckout/prepare | prepareundocheckout | Prepare undo check out operation for record | |||||||||
POST /record/{recordId}/checkin/prepare | preparecheckin | Prepare check in operation for record |
Examples
Reading a record without embedded resources
In case of hal+json, all subresources are represented as links to these resources.
GET /record/271ee18ad0884ecebfc3a3cd0069d759 HTTP/1.1 accept: application/hal+json
{ "_links": { "ancestors": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/ancestors", "select-key": "ancestors" }, "children": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/children", "select-key": "children" }, "self": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759" }, "fields": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/fields", "select-key": "fields" }, "files": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/files", "select-key": "files" }, "preview": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/image/preview", "select-key": "preview" }, "thumbnail": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/image/thumbnail", "select-key": "thumbnail" }, "masterfile": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/masterfile", "select-key": "masterfile" }, "classifications": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/classifications", "select-key": "classifications" } }, "id": "271ee18ad0884ecebfc3a3cd0069d759", "createdOn": "2014-10-23T06:25:21.073Z", "modifiedOn": "2014-10-23T06:25:21.363Z", "tag": null, "title": null, "contentType": "Record" }
In case of json, all subresources are returned as null values.
GET /record/271ee18ad0884ecebfc3a3cd0069d759 HTTP/1.1 accept: application/json
{ "id": "271ee18ad0884ecebfc3a3cd0069d759", "fields": null, "files": null, "preview": null, "thumbnail": null, "masterFile": null, "createdOn": "2014-10-23T06:25:21.073Z", "modifiedOn": "2014-10-23T06:25:21.363Z", "tag": null, "title": null, "contentType": "Record", "classifications": null }
Reading a record using a file id
GET /record/?fileid={id} HTTP/1.1 accept: application/hal+json
This endpoint allows you to retrieve a record based on an associated file id
{ "id": "271ee18ad0884ecebfc3a3cd0069d759", "fields": null, "files": null, "preview": null, "thumbnail": null, "masterFile": null, "createdOn": "2014-10-23T06:25:21.073Z", "modifiedOn": "2014-10-23T06:25:21.363Z", "tag": null, "title": null, "contentType": "Record", "classifications": null }
Reading a record using a unique identifier field
GET /record/?fieldName={name}&fieldValue={value} HTTP/1.1 accept: application/hal+json
If the value specified is from a numeric field, it will be parsed to a decimal with the culture of the logged on user.
{ "id": "271ee18ad0884ecebfc3a3cd0069d759", "fields": null, "files": null, "preview": null, "thumbnail": null, "masterFile": null, "createdOn": "2014-10-23T06:25:21.073Z", "modifiedOn": "2014-10-23T06:25:21.363Z", "tag": null, "title": null, "contentType": "Record", "classifications": null }
Reading a record with embedded resources
Read records and embed thumbnail and preview.
GET /record/271ee18ad0884ecebfc3a3cd0069d759 HTTP/1.1 accept: application/hal+json select-record: thumbnail select-record: preview
{ "_links": { "self": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759" }, "fields": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/fields", "select-key": "fields" }, "files": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/files", "select-key": "files" }, "masterfile": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/masterfile", "select-key": "masterfile" }, "classifications": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/classifications", "select-key": "classifications" } }, "id": "271ee18ad0884ecebfc3a3cd0069d759", "createdOn": "2014-10-23T06:25:21.073Z", "modifiedOn": "2014-10-23T06:25:21.363Z", "tag": null, "title": null, "contentType": "Record", "_embedded": { "preview": { "_links": { "self": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/image/preview" } }, "size": 10896, "width": 480, "height": 480, "extension": "jpg", "uri": "/image/9T72XFv_d9imNxyxhCqoRRsvStHec03rZCywLbemcY4ocOPwYGTJsG226NrGLXrYNMy6wdihphr7aqOf.../" }, "thumbnail": { "_links": { "self": { "href": "/record/271ee18ad0884ecebfc3a3cd0069d759/image/thumbnail" } }, "size": 3225, "width": 160, "height": 160, "extension": "jpg", "uri": "/image/9T72XFv_d9imNxyxhCqoRRsvStHec03rZCywLbemcY4ocOPwYGTJsG226NrGLXrYNMy6wdihphr7aqOf.../" } } }
Retrieve the record's preview or thumbnail image binary data
GET /record/271ee18ad0884ecebfc3a3cd0069d759/image/preview/download HTTP/1.1
The response is the stream of the record's preview image binary data (with the
content-type set to "image/jpeg" or "image/png", etc. depending on the type of the image returned).
Similar request can be used to retrieve the thumbnail:
GET /record/271ee18ad0884ecebfc3a3cd0069d759/image/thumbnail/download HTTP/1.1
Immediate propagation for record updates
For POST, PUT and DELETE operations on the /record resource you can force an immediate update of the search index, or immediate propagation. To do so, add the boolean header/query-string parameter set-immediateSearchIndexUpdate and set it to "true". If you don't specify this parameter, or set it to "false", the change will be added to the queue of the Enterprise search synchronization process.
Setting the parameter to true will immediately push the record changes to the search index, so that this record can immediately be found, e.g. while an ETL import is still running. This is important, for example, when importing both the child and parent of linked records.
PUT /record/8735a5a3e75a4bc0a2a1a3cd0069b669 "set-immediateSearchIndexUpdate": "true", { "tag": "some tag", ... }
Apply metadata
For POST and PUT operations on the /record resource you can supply a metadata file for the record. To do this pass the token, which you get after
uploading the metadata file, in combination with a schema name into the "metadata" property. More info on how to upload a file at Uploading files.
The name property should match the schema name that is defined in the ".dataExchangeSchemas" setting.
POST /record { "files": { ... }, "metadata": { "name": "ImportSchema", "token": "NzZBN0Y0NDctRjQyMy00NTJDLThDNEMtMUY4MkQ0MjA4OUU0" } }
Editing a record (full body)
Disabling validation and rules. It may be necessary to edit record and skip running the validation and rules. To accomplish this you will need to following information in the header. The client_id can be supplied in the Bearer authentication token or in the header (example below)
"id" for addOrUpdate of a file version, additional file or file preview
can be a token or a guid. When adding a new file version, additional file
or file preview, you pass the token which you get after uploading a file
(please check the "See also" section below).
When editing, you pass the guid of an existing file.
To create a new file, you have to specify at least one file version with a token for
PUT /record/8735a5a3e75a4bc0a2a1a3cd0069b669 { "tag": "<xml>some tag</xml>", "contentType": "Record", "classifications": { "addOrUpdate": [ { "id": "F0962A92-8725-4FFC-9301-926FFCB6527A", "sortIndex": 2 }, { "id": "AB57432B-C899-40CF-BD44-802D5201973C", "sortIndex": 1 } ], "remove": [ { "id": "1A5842C2-3204-41F9-9527-D7E2F293131E" }, { "id": "D78B9DA1-A1E2-4DBE-8E2A-8F8FA62667F5" }, { "id": "09F59FE8-CD01-43FB-8B17-146C0AAB7A6A" } ] }, "files": { "master": "NzZBN0Y0NDctRjQyMy00NTJDLThDNEMtMUY4MkQ0MjA4OUU0", "addOrUpdate": [ { "versions": { "addOrUpdate": [ { "id": "NzZBN0Y0NDctRjQyMy00NTJDLThDNEMtMUY4MkQ0MjA4OUU0", "filename": "file1.png", "tag": "<xml>some other tag</xml>", "versionLabel": "this is a dummy label", "comment": "this is a comment for file with fields update" } ] }, "fields": { "addOrUpdate": [ { "id": "cddb3052c3694f3496efec4e1fdda338", "localizedValues": [ { "languageId": "c2bd4f9bbb954bcb80c31e924c9c26dc", "value": "some text in English" }, { "languageId": "b0d62a54c4384e86945ea4b1009ed109", "value": "some text in Dutch" } ] } ], "remove": [ { "id": "b75af862c30a496698ac6bdd7a86618f" } ] } }, { "id": "72728492-E0C1-4695-B2AA-6FE17E96FDF5", "versions": { "addOrUpdate": [ { "id": "EAE049FC-F7CB-49D0-87B2-D0A0E8B79774", "filename": "file3.png", "tag": "<xml>yet another tag</xml>", "versionLabel": "yet another dummy label", "comment": "yet another comment", "additionalFiles": { "addOrUpdate": [ { "id": "MkYzQjc0MTctQ0E3Ri00QUFELUEwQkQtNEIzRkQ2NzczOEY0", "label": "new additional file label", "tag": "<xml>and here yet another tag</xml>", "filename": "new filename.jpg", "purposes": [ "review", "lowres" ] } ], "remove": [ { "id": "148BA512-5618-2246-8D94-72589D721B0Y" } ] }, "Previews": { "master": "MzRBMTA1MTYtQ0UyOC00RDRGLTlGOUEtNzQxMjg2NjgzMDNG", "addOrUpdate": [ { "id": "MzRBMTA1MTYtQ0UyOC00RDRGLTlGOUEtNzQxMjg2NjgzMDNG", "name": "new file preview", "pageNumber": 2, "tag": "<xml>oh yes, one more tag</xml>" } ], "remove": [ { "id": "AAEC425A-CA87-4495-B10D-CBA97776E9AA" } ] }, "publicationItems": [ { "pageNumber": 1, "targetFileVersionId": "C8A0DBE0-4513-4A85-B31C-E2F3D68E5CE1" }, { "pageNumber": 2, "targetFileVersionId": "D166A072-2D0D-42CE-810B-3E76F64BFFBD" } ] } ], "remove": [ { "id": "318BA544-7453-4527-8D97-23589D721D9C" }, { "id": "B1137AEC-16DF-4E6C-96CF-007D74263530" } ] } }, { "id": "DA75E95E-E306-4F1D-BAEB-A5980109C930", "watermarktype": "UseSpecified", "watermarkId": "CF4F6966-398D-4B26-B08B-2F5FE4809FD4" }, { "id": "DA75E95E-E306-4F1D-BAEB-A5980109C930", "versions": { "addOrUpdate": [ { "id": "D55D1DE0-7E8E-4AF7-BF78-A598010AC47D", "watermarktype": "None", "watermarkId": "00000000-0000-0000-0000-000000000000" } ] } } ], "remove": [ { "id": "5B044ECA-7E34-4242-B608-9B942BF3063A" } ] }, "fields": { "addOrUpdate": [ { "id": "b149288b81d741d8b721a3cd0069b113", "localizedValues": [ { "languageId": "c2bd4f9bbb954bcb80c31e924c9c26dc", "value": "some text in English" }, { "languageId": "b0d62a54c4384e86945ea4b1009ed109", "value": "some text in Dutch" } ] }, { "id": "6980bb9511454c4896afa48f009ac883", "localizedValues": [ { "languageId": "00000000000000000000000000000000", "values": [ "3240c776b7454ac19291a3cd006ea6c3", "209d7ede48004a008885a3cd006b8b8c" ] } ] }, { "id": "4d29b74f7ad2435294b9a49700a4ac3f", "localizedValues": [ { "languageId": "00000000000000000000000000000000", "parents": [ { "recordId": "8c19b5cb663b4f3ea4d7a3cd0069b4a8" } ], "children": [ { "recordId": "7c0040fd01b64c3485bda3cd0069b377" }, { "recordId": "98e9cd4e992f496ba3aea3cd0069b3b3" } ] } ] }, { "id": "e25dcaf794a8445d82b799fc6908557d", "localizedValues": [ { "languageId": "00000000000000000000000000000000", "hyperlinks": [ { "url": "https://www.aprimo.com", "displayText": "Aprimo website", } ] } ] } ], "remove": [ { "id": "b149288b81d741d8b721a3cd0069b113" } ] } }
-
The Rest API supports updating values in different languages in one call.
For every field value the id of the language needs to be set.
For language independent fields, an empty guid needs to be provided. -
The property that is used for setting values is dependent on the type of the field.
Setting the value property to null behaves differently between the different field types.type clear property value value property behavior of setting value to null - SingleLineText
- MultiLineText
- Html
- Numeric
- DateTime
- Date
- Time
- Duration
Value is false or property is missing. Value Reset to default. - Html
- Time
true Value An exception will be thrown since the clear property is not supported with these data types. - Numeric
- Date
- DateTime
- SingleLineText
- MultiLineText
- Duration
true Value The Value will be cleared. Then if Reset to Default Triggers are configured, then they will be executed. - ClassificationList
- LanguageList
- OptionList
- RecordList
- UserList
- UserGroupList
- TextList
Value is false or property is missing. Values Reset to defaults. - ClassificationList
- OptionList
- UserList
- UserGroupList
- TextList
true Values The Values will be cleared. Then if Reset to Default Triggers are configured, then they will be executed. - LanguageList
- RecordList
true Values An exception will be thrown since the clear property is not supported with these data types. RecordLink Value is false or property is missing. Parents
Children
LinksIgnore. RecordLink true Parents
Children
LinksAn exception will be thrown since the clear property is not supported with this data type. HyperlinkList Value is false or property is missing. Hyperlinks The Value will be cleared. Then if Reset to Default Triggers are configured, then they will be executed. - Only fields in Floating scope can be removed from the record.
Disabling validation and rules. It may be necessary to edit record and skip running the validation and rules. To accomplish this you will need to following information in the header. The client_id can be supplied in the Bearer authentication token or in the header (example below)
disable-validations: true, disable-rules: true, client-id: Client Id needs to match the accessCode in the .validationAndRuleDisablingRules system setting. "disableValidation" and/or "disableRules" in that setting also needs to be set to true.
Editing a record (attributes only)
PUT /record/8735a5a3e75a4bc0a2a1a3cd0069b669 { "tag": "<xml>some tag</xml>", "contentType": "Record" }
Deleting a record
If the header ForceDelete is set to True, then a locked asset will get forced delete (request user must be granted with specific permission 'Override Delete Usage Lock').
DELETE /record/8735a5a3e75a4bc0a2a1a3cd0069b669