Using data models

Data models

If you wish to return the field values for a Synergist table, for one or more records, you will typically call the appropriate API and specify the data model required. All the key tables will have two standard models available <tablename>list model <tablename>details model

If you require multiple records you would normally specify the list model. If you require the data for a single record you would normally specify the details model (which returns more fields than the list model).

Note: If you don't specify a model in your call the system will return a default model. If a single record is returned the details model will be used, if multiple records are returned the list model will be used.

Example - Activities

e.g using the activities.json API to return activity records.

  • activitylist
  • activitydetails

A single record is returned if the ‘activityid’ parameter is passed. If a list of records is required a ‘view’ parameter should be passed. If no ‘view’ parameter is passed all records for the synergist company are returned.

Parameter

Description

Examples

API

The API area

activities.json

Action

Not required

General

Parameters described in overview

user=user&password=user&version=3.3

Company

The company context

company=1

Optional Style

Which kind of data is required

style=modelstructure / style=modeldata (default)

Modelstructure

Name of model required

Modelstructure=activitylist / Modelstructure=activitydetails

Response

Returned data

A JSON string containing the data

Example 1
Request for data (list of records using specified model)

http://<SERVER>/jsonapi/activities.json?company=1&version=3.3&user=user&password=user&style=modeldata&modelstructure=activitylist&rows=2&page=1

Example response (activitylist model):

{
  "responsecode": 1,
  "responsestatus": "OK",
  "errorcode": 0,
  "errormessage": "",
  "totalrows": 98,
  "totalpages": 49,
  "responsemessage": "",
  "pagerows": 2,
  "pagenumber": 1,
  "success": true,
  "data": [
    {
      "activityuuid": "A2905F5303AB5943B4D5E00E547B2CF5",
      "activityTimeStampModified": 1445948375,
      "activityRecordVersionNumber": 9,
      "activityAttachmentCount": "1",
      "activityCreated": "Created by SYN_Jon on 22/04/2015 at 1:02pm",
      "activityDetails1stLIne": "",
      "activityRegardingDescription": "",
      "activityRegardingDescription2": "",
      "activityRegardingWhat": "Campaign: jon test",
      "activityPriorityDescription": "High",
      "activityOwnerID": 256,
      "activityOwnerName": "SYN_Jimish",
      "activityClientCode": "",
      "activityClientName": "",
      "activityCompleted": true,
      "activityViewDate": "0000-00-00",
      "activityViewTime": "00:00:00",
      "activityViewTimezone": "",
      "activityJobNumber": "",
      "activityJobNumberSimple": "",
      "activityJobAndPhase": "",
      "activityJobAndPhaseSimple": "",
      "activitySubject": "jon test",
      "activityActivitytype": "Email Export",
      "activityID": 6161
    }
    ]
}

Example 2
Request for data (typically a single record using specified model)

http://<SERVER>/jsonapi/activities.json?company=1&version=3.3&user=user&password=user&style=modeldata&modelstructure=activitydetails&Activityid=6712

Example response (activitydetails model):

{
  "responsecode": 1,
  "responsestatus": "OK",
  "errorcode": 0,
  "errormessage": "",
  "totalrows": 211,
  "totalpages": 106,
  "responsemessage": "",
  "pagerows": 2,
  "pagenumber": 1,
  "success": true,
  "data": [
    {
      "activityuuid": "6D7106089ADDF04DBCFB08F6E8DA0E77",
      "activityTimeStampModified": 1493799916,
      "activityRecordVersionNumber": 45,
      "activityAlertBeforePeriodDescription": "",
      "activityJobPhaseDescription1stLine": "",
      "activityJobDescription1stLine": "",
      "activityCompletedDescription": "",
      "activityCreated": "Created by SYN_Keith White on 17/03/2016 at 4:22pm",
      "activityDetails1stLine": "",
      "activityHistorySummary": "03/05/17 9:24am - Document 'Std letter 1' deleted. ",
      "activityMailshotResponse": "",
      "activityModified": "Last modified by SYN_Jon on 03/05/2017 at 9:25am",
      "activityRegardingDescription": "",
      "activityRegardingDescription2": "",
      "activityRegardingWhat": "Campaign: Blah",
      "activitySecondaryOwnersDescription": [
        
      ],
      "activitySecondaryOwnersUserID": [
        
      ],
      "activityPriorityDescription": "High",
      "activityTimeDueDisplay": "12:00 AM",
      "activityCompanyName": "The Professional Services Company",
      "activityCompanyNumber": 1,
      "activityID": 6712,
      "activityJobNumber": "",
      "activityJobNumberSimple": "",
      "activityJobAndPhase": "",
      "activityJobAndPhaseSimple": "",
      "activityStageCode": "",
      "activityStageDescription": "",
      "activitySubject": "Blah",
      "activityDetails": "",
      "activityClientCode": "",
      "activityClientName": "",
      "activityClientPhone": "",
      "activityActivitytypeCode": "PUP",
      "activityActivitytype": "Public todo2",
      "activityActivitytypeCompanyNumber": 1,
      "activityActivitytypeCategory": 2,
      "activityTeamCode": "",
      "activityTeamDescription": "",
      "activityOwnerID": 4,
      "activityOwnerName": "SYN_Keith White",
      "activityCompletedBy": "",
      "activityCreatedBy": "SYN_Keith White",
      "activityLastModifiedBy": "SYN_Jon",
      "activityClientContactInternalRef": 0,
      "activityClientContactFullName": "",
      "activityStatus": "",
      "activityPriorityID": 1,
      "activityCategory": "blue",
      "activityAlertSentBefore": false,
      "activityAlertBeforePeriod": 0,
      "activityImmediateAlert": true,
      "activityAlertCompleted": false,
      "activityCompleted": false,
      "activityAlertSentInstant": true,
      "activityMarketingCampaignID": 474,
      "activityMarketingCampaignPromotionCode": "",
      "activityDateDue": "0000-00-00",
      "activityTimeDue": "00:00:00",
      "activityDueTimezone": "",
      "activityCompletedByUserID": 0,
      "activityCompletedDate": "0000-00-00",
      "activityCompletedTime": "00:00:00",
      "activityCompletedTimeZone": "",
      "activityTimezoneCompleted": "",
      "activityTimezoneCreated": "GMT",
      "activityTimezoneLastModified": "GMT",
      "activityCreatedByUserID": 4,
      "activityCreationDate": "2016-03-17",
      "activityCreationTime": "16:22:53",
      "activityCreationTimeZone": "UTCA",
      "activityLastModifiedByUserID": 3,
      "activityLastModifiedDate": "2017-05-03",
      "activityLastModifiedTime": "09:25:16",
      "activityLastModifiedTimeZone": "UTCA"
    }
    ]
}