Transitioning from v3 to v4

Change notes for transitioning to using v4 of the Rightsline API.

Adjust API URL and AWS region

The v4 Rightsline API is accessed using the subdomain https://ris.rightsline.com.

For access to other environments, please refer to this table for the proper v4 subdomain.

The AWS region for the US API has also been changed from us-east-1 to us-west-2. The EU region has not been changed (eu-central-1).

To transition to v4, adjust all existing calls' authorization to reference the new AWS region and update the URL of each endpoint to account for the new subdomain.

Adjust calls to existing Rightset endpoints to Right endpoints

All rightset endpoints have been replaced by right endpoints for consistency.

To transition to v4, adjust all existing calls to reference the new endpoint names.

Update references to parentURL and childURL in calls to relationship endpoint to reference new objects

The parentUrl and childUrl properties have been removed from entity relationship objects, and have been replaced with parentTemplate, parentStatus, childTemplate, and childStatus objects.

To review what encompasses the entity relationship object, see Relationship Object.

{

"id": 255317359,

"relationshipType": {

"relationshipTypeId": 0,

"relationshipTypeName": "Default"

},

"createdById": 1,

"createdDate": "2019-10-30T20:54:23.297Z",

"lastUpdatedById": 1,

"lastUpdatedDate": "2019-10-30T20:54:23.297Z",

"parentCharTypeId": 4,

"parentRecordId": 1,

"parentTemplate": {

"templateId": 1,

"templateName": "Rights In"

},

"parentStatus": {

"statusId": 1,

"statusName": "Active"

},

"childCharTypeId": 1,

"childRecordId": 1,

"childTemplate": {

"templateId": 1,

"templateName": "Feature"

},

"childStatus": {

"statusId": 1,

"statusName": "Active"

}

}

Handle 403 - Forbidden response when unauthorized to update a field on an entity

If a user attempts to update fields on an entity that they do not have permission to update, the API will return a 403 - Forbidden status code, instead of ignoring that field in the request.

Handle 403 - Forbidden response when unable to execute a workflow action from a status

If a user attempts to execute a workflow action on an entity where the action is not available from the current status, the API will now return a 403 - Forbidden status code with the message "Action X not available to be taken from status Y", instead of returning a 200 - OK status code with the message "false".

Add statusUpdatedById and statusUpdatedDate fields on entity objects

Entity objects will now include two new fields, statusUpdatedById and statusUpdatedDate, indicating the user and time of the last status update.

To review what encompasses the entity object, see Entity Object.

{

"relationshipUpdateRules": null,

"id": 1,

"revisionId": 0,

"title": "The Three Stooges",

"template": {

"fields": [],

"templateId": 1,

"templateName": "Collection",

"processId": 0,

"processName": null

},

"status": {

"statusId": 1,

"statusName": "Active"

},

"characteristics": {

"release_year": 1925

},

"comments": [],

"createdById": 1,

"createdDate": "2015-08-25T21:07:02.487Z",

"lastUpdatedById": 1,

"lastUpdatedDate": "2020-05-02T02:17:13.717",

"statusUpdatedById": 1,

"statusUpdatedDate": "2020-05-02T02:17:13.717"

}

Adjust all existing calls to search endpoints to return 100 records per page

Each search endpoint will return a max of 100 records per page. If a value greater than 100 is passed in the rows field, the search will still only return 100 records per page.

To transition to v4, adjust all existing search calls to request a maximum of 100 rows.

Adjust /*-templates endpoint responses to no longer include fields, retrieve fields via /*-templates/:id instead

To protect against the response size becoming too large, we have removed the fields from the /*-templates endpoint responses. To retrieve the fields on a template in v4, you will need to retrieve a specific template by its template ID, like /v4/table-templates/2 will retrieve all the fields for table template ID 2. See here for an example.

Last updated