Difference between revisions of "Creating SmartConnect Functions"

From SmartWiki
Jump to: navigation, search
(Delete Multiple Upload Files)
 
(135 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Banner-UnderConstruction}}
+
 
 
SmartConnect functions are specific to individual copies of SmartSimple so you can only use the functions that are have been previously established in that copy. The article describes how you add functions to an instance.
 
SmartConnect functions are specific to individual copies of SmartSimple so you can only use the functions that are have been previously established in that copy. The article describes how you add functions to an instance.
  
Line 18: Line 18:
 
* '''Record Type''' – a list of all SmartSimple objects within this instance. This will include: Report (reports you have created in the instance), Organization (company records), Users (system users and contacts), and each Universal Tracking Application™ Level 1, Level 2 and Level 3 type that you have created in the instance.
 
* '''Record Type''' – a list of all SmartSimple objects within this instance. This will include: Report (reports you have created in the instance), Organization (company records), Users (system users and contacts), and each Universal Tracking Application™ Level 1, Level 2 and Level 3 type that you have created in the instance.
 
* '''Action Type''' – this defines the action to be taken by the function. The following actions are available:  GET META, UPDATE META, GET, LIST, UPDATE, UPDATE ASSOCIATIONS, LIST ASSOCIATIONS, DOWNLOAD FILE, LIST FILES, SEARCH FILES, LIST NOTES and  VARIABLE REPLACE. Details on these Action Types / Methods are available below.
 
* '''Action Type''' – this defines the action to be taken by the function. The following actions are available:  GET META, UPDATE META, GET, LIST, UPDATE, UPDATE ASSOCIATIONS, LIST ASSOCIATIONS, DOWNLOAD FILE, LIST FILES, SEARCH FILES, LIST NOTES and  VARIABLE REPLACE. Details on these Action Types / Methods are available below.
* '''Field List''' – this restricts the fields that are to be retrieved from the underlying object.
+
* '''Field List''' – is used to define which fields are retrievable through the function call. Please limit field list to ~50 standard fields/custom fields.
 +
 
 +
==Configurations and Responses==
 +
Visit the '''[https://api.smartsimple.com/devtools/api.html interactive demonstration page]''' to test the sample functions.
 +
 
 +
===Metadata===
 +
This function will retrieve the metadata of the selected '''Object Type'''.
 +
 
 +
====Get Metadata of a Universal Tracking Application====
 +
'''Function Name'''  -  3.01.1 Get Metadata Sample 1: CMS360°: Application Metadata<br />
 +
'''Description'''  - To retrieve metadata of a [[Category:Universal_Tracking_Application|Universal Tracking Application]].<br />
 +
'''Object Type'''  -  Case Management 360° - Case<br />
 +
'''Action Type '''  -  Get Meta<br />
 +
'''Field List'''  - levelone.*;;leveltwo.*;;levelthree.* 
 +
 
 +
No parameters are needed to retrieve metadata.<br /> 
 +
 
 +
[[File:APIFunctionSample5l.PNG|800px]]
  
==SmartConnect Function Samples==
 
Visit the '''[https://api.smartsimple.com/devtools/dev_api.html interactive demonstration page]''' to test the sample functions.
 
  
===Get===
 
====Retrieve a Single Organization Record====
 
'''Function Name'''  -  3.01.1 Get Method Sample 1: Retrieve a Single Organization Record<br />
 
'''Description'''  - This function will retrieve a single record from the organization using the [[Determining_the_companyid|Company ID]]. The function is set up to retrieve the fields listed under '''Field List'''.<br />
 
'''Object Type'''  -  Company<br />
 
'''Action Type '''  -  Get<br />
 
'''Field List'''  -  sf_Company ID;;sf_Name;;sf_Address;;sf_City;;sf_Country;;sf_Zip / Postal Code;;cf_EIN Number;;sf_Mission Statement
 
  
[[File:APIFunctionSample1.PNG|800px]]
+
=====Sending API request using cURL=====
 +
cURL command below is an example on how to send API request to ''Get Metadata of a Universal Tracking Application'' using [https://curl.haxx.se/ cURL].
  
====Retrieve a Single Contact Record====
+
<pre><nowiki>curl -X GET -k -i 'https://api.smartsimple.com/API/1/levelone/</nowiki>
'''Function Name'''  -  3.01.2 Get Method Sample 2: Retrieve a Single Contact Record<br />
+
<nowiki>?url=https://api.smartsimple.com/API/1/levelone/</nowiki>
'''Description'''  - This function will retrieve a single record from the user table using the [[Determining_the_userid|User ID]]. The function is set up to retrieve the fields listed under '''Field List'''.<br />
+
<nowiki>&companyid=825646</nowiki>
'''Object Type'''  -  User<br />
+
<nowiki>&alias=api</nowiki>
'''Action Type '''  -  Get<br />
+
<nowiki>&username=smartconnectdemo@smartsimple.com</nowiki>
'''Field List'''  -  sf_User ID;;sf_Last Name;;sf_First Name;;sf_Prefix;;sf_Suffix;;sf_Title;;sf_Phone;;sf_Email
+
<nowiki>&password=********************</nowiki>
 +
<nowiki>&apitoken=U2N4RwUBTn5XZldZXFdfWX1@C2JAWXVuAjIF'</nowiki></pre>
  
[[File:APIFunctionSample2.PNG|800px]]
 
  
====Retrieve a Single Grant Application Record====
+
====Get Metadata of Organizations====
'''Function Name'''  -  3.01.3 Get Method Sample 3: Retrieve a Single Grant Application Record<br />
+
<!--63342 - SmartConnect API - metadata option to include Orgs/Contacts-->
'''Description'''  - This function will retrieve a single record from the [[Universal Tracking Application]] Level 1 using the [[Determining_the_opportunityid|Opportunity ID]].<br />
+
'''Function Name'''  -  3.01.2 Get Metadata Sample 2: Organizations Metadata<br />
'''Object Type'''  -  Submission Manager - Grant<br />
+
'''Description'''  - To retrieve metadata from Organizations.<br />
'''Action Type '''  -  Get<br />
+
'''Object Type'''  -  Company<br />
'''Field List'''  -  cf_Project Name;;cf_Submission Number;;sf_Application Type;;sf_Status;;sf_Customer;;sf_Owner;;cf_Focus Area;;cf_Amount Requested;;cf_Program Area;;cf_Location;;cf_Proposed Start Date;;cf_Proposed End Date
+
'''Action Type '''  -  Get Meta<br />
 +
'''Field List'''  - companies.*
 +
No parameters are needed to retrieve metadata.
  
[[File:APIFunctionSample3.PNG|800px]]
+
[[File:APIFunctionGetOrgMeta.PNG|800px]]
  
====Sample 4: Retrieve a Single Grant Application Payment Record====
+
====Get Metadata from Contacts====
'''Function Name'''  -  3.01.4 Get Method Sample 4: Retrieve a Single Grant Application Payment Record<br />
+
<!--63342 - SmartConnect API - metadata option to include Orgs/Contacts-->
'''Description'''  - This function will retrieve a single record from the [[Universal Tracking Application]] Level 2 using the [[Determining_the_eventid|Event ID]].<br />
+
'''Function Name'''  -  3.01.3 Get Metadata Sample 3: Users Metadata<br />
'''Object Type'''  -  Submission Manager - Activity<br />
+
'''Description'''  - To retrieve metadata from Users.<br />
'''Action Type '''  -  Get<br />
+
'''Object Type'''  -  User<br />
'''Field List'''  -  sf_Status;;sf_Activity Type;;cf_Payment ID;;cf_Payment Amount;;cf_Payment Date;;Payment Notes
+
'''Action Type '''  -  Get Meta<br />
 +
'''Field List'''  - contacts.*<br />
 +
No parameters are needed to retrieve metadata.
  
[[File:APIFunctionSample4.PNG|800px]]
+
[[File:APIFunctionGetUserMeta.PNG|800px]]
  
 
===Report===
 
===Report===
 +
This function will retrieve the results of the query from an existing report by using the [[Determining_the_reportid|'''reportid''']].
 +
 
====Report Query====
 
====Report Query====
 
<!--71845 - SmartConnect Function - Report-Query doesn't show the data-->
 
<!--71845 - SmartConnect Function - Report-Query doesn't show the data-->
Line 71: Line 86:
 
'''reportid''' - is the [[Determining the reportid|Report ID]] of the [[Report|report]] in the instance.<br/>
 
'''reportid''' - is the [[Determining the reportid|Report ID]] of the [[Report|report]] in the instance.<br/>
 
'''Optional field'''<br/>
 
'''Optional field'''<br/>
'''criteriavalue''' - when the [[Report|report]] has [[Setting_Text_Criteria_–_Logical_Operators_in_a_Report|text criteria]], values for the criteria(s) should be indicated in this field. If report contains multiple criteria, values should be delimited by double semi-colon eg. "VALUE_1;;VALUE_2".
+
criteriavalue - when the [[Report|report]] has [[Setting_Text_Criteria_–_Logical_Operators_in_a_Report|text criteria]], values for the criteria(s) should be indicated in this field. If report contains multiple criteria, values should be delimited by double semi-colon eg. "VALUE_1;;VALUE_2".
 
 
 
=====A report query on the number of assessors grouped by specialty=====
 
=====A report query on the number of assessors grouped by specialty=====
 
'''Description'''  - A sample that will display the number of Assessors based on their specialty<br />
 
'''Description'''  - A sample that will display the number of Assessors based on their specialty<br />
Line 106: Line 120:
 
criteriavalue: <br />
 
criteriavalue: <br />
 
--End custom parameter--
 
--End custom parameter--
 +
 +
[[File:APIFunctionReport4.PNG|800px]]
  
 
=====A report query on a list of Payments grouped by Grant Type=====
 
=====A report query on a list of Payments grouped by Grant Type=====
Line 113: Line 129:
 
criteriavalue: <br />
 
criteriavalue: <br />
 
--End custom parameter--
 
--End custom parameter--
 +
 +
[[File:APIFunctionReport5.PNG|800px]]
 +
 +
===Get===
 +
This function will retrieve all fields from the '''Field List''' of a single record based on the '''recordid''' of an '''Object Type'''.
 +
 +
====Retrieve a Single Organization Record====
 +
'''Function Name'''  -  3.03.1 Get Method Sample 1: Retrieve a Single Organization Record<br />
 +
'''Description'''  - This function will retrieve a single record from the organization using the recordid: [[Determining_the_companyid|Company ID]]. The function is set up to retrieve the fields listed under '''Field List'''.
 +
 +
'''Object Type'''  -  Company<br />
 +
'''Action Type '''  -  Get<br />
 +
'''Field List'''  -  sf_Company ID;;sf_Name;;sf_Address;;sf_City;;sf_Country;;sf_Zip / Postal Code;;cf_EIN Number;;sf_Mission Statement
 +
 +
[[File:APIFunctionSample1.PNG|800px]]
 +
 +
====Retrieve a Single Contact Record====
 +
'''Function Name'''  -  3.03.2 Get Method Sample 2: Retrieve a Single Contact Record<br />
 +
'''Description'''  - This function will retrieve a single record from the user table using the [[Determining_the_userid|User ID]]. The function is set up to retrieve the fields listed under '''Field List'''.<br />
 +
'''Object Type'''  -  User<br />
 +
'''Action Type '''  -  Get<br />
 +
'''Field List'''  -  sf_User ID;;sf_Last Name;;sf_First Name;;sf_Prefix;;sf_Suffix;;sf_Title;;sf_Phone;;sf_Email
 +
 +
[[File:APIFunctionSample2.PNG|800px]]
 +
 +
====Retrieve a Single Grant Application Record====
 +
'''Function Name'''  -  3.03.3 Get Method Sample 3: Retrieve a Single Grant Application Record<br />
 +
'''Description'''  - This function will retrieve a single record from the [[Universal Tracking Application]] Level 1 using the [[Determining_the_opportunityid|Opportunity ID]].<br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  -  Get<br />
 +
'''Field List'''  -  cf_Project Name;;cf_Submission Number;;sf_Application Type;;sf_Status;;sf_Customer;;sf_Owner;;cf_Focus Area;;cf_Amount Requested;;cf_Program Area;;cf_Location;;cf_Proposed Start Date;;cf_Proposed End Date
 +
 +
[[File:APIFunctionSample3.PNG|800px]]
 +
 +
====Retrieve a Single Grant Application Payment Record====
 +
'''Function Name'''  -  3.03.4 Get Method Sample 4: Retrieve a Single Grant Application Payment Record<br />
 +
'''Description'''  - This function will retrieve a single record from the [[Universal Tracking Application]] Level 2 using the [[Determining_the_eventid|Event ID]].<br />
 +
'''Object Type'''  -  Submission Manager - Activity<br />
 +
'''Action Type '''  -  Get<br />
 +
'''Field List'''  -  sf_Status;;sf_Activity Type;;cf_Payment ID;;cf_Payment Amount;;cf_Payment Date;;Payment Notes
 +
 +
[[File:APIFunctionSample4.PNG|800px]]
 +
 +
====Get System Variables====
 +
=====Retrieve a System Variable Record=====
 +
'''Function Name'''  -  3.03.5 System Variables Sample 1: Get<br />
 +
'''Description'''  - Get information on the [[System_Variables|system variables]] by searching the System Variable ID<br />
 +
'''Object Type'''  -  System Variables<br />
 +
'''Action Type '''  -  Get<br />
 +
'''Field List'''  - sf_ID;;sf_Name;;sf_Value;; 
 +
 +
--Begin custom parameter --<br />
 +
recordid: 3601<br />
 +
--End custom parameter--
 +
 +
  
 
===List===
 
===List===
====List====
+
<!--66823 - SmartConnect grouping criteria-->
 +
<!--75675 - SmartConnect field name and format consistency-->
 +
This function will retrieve a list of records from the selected '''Object Type'''.
 +
Custom parameters for List Functions are:
 +
* criteria - this is an optional json array. This contains the following nodes: "andor", "field", "operator" and "value"
 +
 
 +
: Values of each nodes:
 +
: "andor" - either "and" or "or"
 +
: "field" - name of the standard/custom field to set the condition to
 +
: "operator" - can use the following: =,>,>=,<=,<,<>,!=,like,not like
 +
: "value" - value for the filter
 +
: '''''sample1: '''''
 +
: criteria: [{"andor":"and","field":"FIELDNAME","operator":"like","value":"PATTERN"}]
 +
: sortby: [{"field":"FIELDNAME","direction":"asc"}]
 +
: othersettings : {"getstorevalue":"1","keyformat":"0"}
 +
: '''''sample2: '''''
 +
: criteria: [{"andor":"and","field":"FIELDNAME1","operator":"=","value":"100"},{"andor":"or","field":"FIELDNAME2","operator":"like","value":"PATTERN"}]
 +
: sortby: [{"field":"FIELDNAME","direction":"desc"}]
 +
: othersettings : {"getstorevalue":"0","keyformat":"0"}
 +
: '''''sample3:'''''
 +
: An example query with brackets: ( (cf_somefield1 like '%whatever%' or cf_somefield2 like  '%whatever%'  or cf_somefield3 like  '%whatever%'  or cf_somefield4like  '%whatever%' ) and (cf_someotherfield1='whatever' or cf_someotherfield2='whatever else'))
 +
: criteria: [{ "andor": "(", "field": "cf_somefield1", "operator": "like", "value": "whatever" },{ "andor": "or", "field": "cf_somefield2", "operator": "like", "value": "whatever" },{ "andor": "or", "field": "cf_somefield3", "operator": "like", "value": "whatever" },{ "andor": "or", "field": "cf_somefield4", "operator": "like", "value": "whatever" },{ "andor": ") and (", "field": "cf_someotherfield1", "operator": "=", "value": "whatever" },{ "andor": "or", "field": "cf_someotherfield2", "operator": "=", "value": "whatever else" }]
 +
: sortby: 
 +
: othersettings : {"getstorevalue":"0","keyformat":"0"}
 +
* sortby - this is an optional json array. This contains the following nodes: "field" and "direction"
 +
 
 +
: "field" - name of the standard/custom field to sort records by
 +
: "direction" - either "asc" (for ascending) or "desc" (for descending)
 +
* othersettings
 +
** getstorevalue - this is an optional settings for the json array. Options are: int type: '''0''' - to get display value, '''1''' to get stored value (value from the database eg. $25,000 vs 25000)
 +
** keyformat - this is an optional settings for the json array. Options are: '''0''' - to use what is configured in the Field List form the SmartConnect Function, '''1''' - to use the custom field names / standard field names and '''2''' - to use the custom field ID
 +
 
 
=====Retrieve a list of contacts=====
 
=====Retrieve a list of contacts=====
'''Function Name'''  -  3.03.1.1 List Method Sample 1: Retrieve a list of Contacts<br />
+
'''Function Name'''  -  3.04.1 List Method Sample 1: Retrieve a list of Contacts<br />
 
'''Description'''  - This function will retrieve a list of contacts based on criteria specified.<br />
 
'''Description'''  - This function will retrieve a list of contacts based on criteria specified.<br />
 
'''Object Type'''  -  User<br />
 
'''Object Type'''  -  User<br />
Line 128: Line 231:
 
criteria : [{"andor":"or","field":"sf_First Name","operator":"like","value":"J%"}]<br />
 
criteria : [{"andor":"or","field":"sf_First Name","operator":"like","value":"J%"}]<br />
 
sortby : [{"field":"sf_First Name","direction":"asc"}]<br />
 
sortby : [{"field":"sf_First Name","direction":"asc"}]<br />
getstorevalue :<br />
+
othersettings :<br />
 
--End custom parameter--
 
--End custom parameter--
  
Line 138: Line 241:
 
criteria : [{"andor":"or","field":"sf_First Name","operator":"like","value":"S%"},<br />{"andor":"and","field":"sf_Address","operator":"like","value":"%Peter%"}]<br />
 
criteria : [{"andor":"or","field":"sf_First Name","operator":"like","value":"S%"},<br />{"andor":"and","field":"sf_Address","operator":"like","value":"%Peter%"}]<br />
 
sortby : [{"field":"sf_First Name","direction":"asc"}]<br />
 
sortby : [{"field":"sf_First Name","direction":"asc"}]<br />
getstorevalue :<br />
+
othersettings :<br />
 
--End custom parameter--
 
--End custom parameter--
  
Line 144: Line 247:
  
 
=====Retrieve a list of organizations=====
 
=====Retrieve a list of organizations=====
'''Function Name'''  -  3.03.1.2 List Method Sample 2: Retrieve a list of Organizations<br />
+
'''Function Name'''  -  3.04.2 List Method Sample 2: Retrieve a list of Organizations<br />
'''Description'''  - To retrieve a list of organizations.
+
'''Description'''  - To retrieve a list of organizations.<br />
 
'''Object Type'''  -  Company<br />
 
'''Object Type'''  -  Company<br />
 
'''Action Type '''  -  List<br />
 
'''Action Type '''  -  List<br />
Line 155: Line 258:
 
criteria : [{"andor":"and","field":"sf_Name","operator":"like","value":"Br%"}]<br />
 
criteria : [{"andor":"and","field":"sf_Name","operator":"like","value":"Br%"}]<br />
 
sortby : <br />
 
sortby : <br />
getstorevalue :<br />
+
keyformat: <br />
 
--End custom parameter--
 
--End custom parameter--
  
Line 161: Line 264:
  
 
<u>'''Sample 2B'''</u><br/>
 
<u>'''Sample 2B'''</u><br/>
'''Description'''  - To retrieve a list of organizations with organization name that starts with "Br" and address that contains "Ave" with an ascending order based on the organization name.<br />
+
'''Description'''  - To retrieve a list of organizations with organization name that starts with "Br" and address that contains "Ave" with the list in ascending order based on the organization name.<br />
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
 
criteria : [{"andor":"and","field":"sf_Name","operator":"like","value":"Br%"},{"andor":"and","field":"sf_Address","operator":"like","value":"%Ave%"}]<br />
 
criteria : [{"andor":"and","field":"sf_Name","operator":"like","value":"Br%"},{"andor":"and","field":"sf_Address","operator":"like","value":"%Ave%"}]<br />
 
sortby : [{"field":"sf_Name","direction":"asc"}]<br />
 
sortby : [{"field":"sf_Name","direction":"asc"}]<br />
getstorevalue :<br />
+
othersettings :<br />
 
--End custom parameter--
 
--End custom parameter--
  
Line 171: Line 274:
  
 
=====Retrieve a list of claims=====
 
=====Retrieve a list of claims=====
'''Function Name'''  -  3.03.1.3 List Method Sample 3: CMS360° - Retrieve a list of claims<br />
+
'''Function Name'''  -  3.04.3 List Method Sample 3: CMS360° - Retrieve a list of claims<br />
 
'''Description'''  - To retrieve a list of claims by professors sorted by organization name in descending order.<br />
 
'''Description'''  - To retrieve a list of claims by professors sorted by organization name in descending order.<br />
 
'''Object Type'''  -  Cast Management 360° - Case<br />
 
'''Object Type'''  -  Cast Management 360° - Case<br />
Line 180: Line 283:
 
criteria : [{"andor":"and","field":"cf_Nature of Injury / Comments on Claim","operator":"like","value":"%professor%"}]<br />
 
criteria : [{"andor":"and","field":"cf_Nature of Injury / Comments on Claim","operator":"like","value":"%professor%"}]<br />
 
sortby : [{"field":"sf_Customer","direction":"desc"}]<br />
 
sortby : [{"field":"sf_Customer","direction":"desc"}]<br />
getstorevalue :<br />
+
othersettings :<br />
 
--End custom parameter--
 
--End custom parameter--
  
Line 187: Line 290:
 
====List File====
 
====List File====
 
=====List files of an existing organization=====
 
=====List files of an existing organization=====
'''Function Name'''  -  3.03.2.1 List Files Method Sample 1: from an existing organization<br />
+
'''Function Name'''  -  3.04.4.1 List Files Method Sample 1: from an existing organization<br />
 
'''Description'''  - To retrieve the list of file(s) from the organization using the [[Determining_the_companyid|Company ID]]<br />
 
'''Description'''  - To retrieve the list of file(s) from the organization using the [[Determining_the_companyid|Company ID]]<br />
 
'''Object Type'''  -  Company<br />
 
'''Object Type'''  -  Company<br />
Line 200: Line 303:
 
objectid : 1688407<br />
 
objectid : 1688407<br />
 
fieldid : 1523157<br />
 
fieldid : 1523157<br />
getstorevalue :<br />
+
othersettings :<br />
 
--End custom parameter--
 
--End custom parameter--
  
Line 206: Line 309:
  
 
=====List files from an existing application=====
 
=====List files from an existing application=====
'''Function Name'''  -  3.03.2.2 List Files Method Sample 2: from an existing application<br />
+
'''Function Name'''  -  3.04.4.2 List Files Method Sample 2: from an existing application<br />
 
'''Description'''  - To retrieve the list of file(s) of an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Description'''  - To retrieve the list of file(s) of an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
Line 226: Line 329:
 
====List Notes====
 
====List Notes====
 
=====List notes from an existing application=====
 
=====List notes from an existing application=====
'''Function Name'''  -  3.03.3.1 List Notes Method Sample 1: from an existing application<br />
+
'''Function Name'''  -  3.04.5.1 List Notes Method Sample 1: from an existing application<br />
 
'''Description'''  - To retrieve all note(s) associated with an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Description'''  - To retrieve all note(s) associated with an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
Line 242: Line 345:
 
====List Multiple Addresses====
 
====List Multiple Addresses====
 
=====List all Multiple Addresses of an existing Organization=====
 
=====List all Multiple Addresses of an existing Organization=====
'''Function Name'''  -  3.03.4.1 List Multiple Addresses Method Sample 1: Multiple Addresses of an existing Organization<br />
+
'''Function Name'''  -  3.04.6.1 List Multiple Addresses Method Sample 1: Multiple Addresses of an existing Organization<br />
 
'''Description'''  - To retrieve all of the multiple addresses of an existing organization using the [[Determining_the_companyid|Company ID]]<br />
 
'''Description'''  - To retrieve all of the multiple addresses of an existing organization using the [[Determining_the_companyid|Company ID]]<br />
 
'''Object Type'''  -  Company<br />
 
'''Object Type'''  -  Company<br />
Line 258: Line 361:
 
====List Associations====
 
====List Associations====
 
=====List Contact associations from an existing application=====
 
=====List Contact associations from an existing application=====
'''Function Name'''  -  3.03.5.1 List Associations Method Sample 1: Contact associations from an existing application<br />
+
'''Function Name'''  -  3.04.7.1 List Associations Method Sample 1: Contact associations from an existing application<br />
 
'''Description'''  - To retrieve the list of contacts associated with an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Description'''  - To retrieve the list of contacts associated with an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
Line 265: Line 368:
  
 
Parameters used are:<br />
 
Parameters used are:<br />
''recordid'' = [[Determining_the_opportunityid|Opportunity ID]]<br />
+
''objectid'' = [[Determining_the_opportunityid|Opportunity ID]]<br />
''type'' = either '"contacts"' or '"organizations"'<br />
+
''type'' = either '"contacts"' or '"organizations"'
 +
 
 +
<br />
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
recordid: 8276165<br />
+
objectid: 10697883<br />
 
type: contacts<br />
 
type: contacts<br />
 
--End custom parameter--
 
--End custom parameter--
 +
 +
''Note:'' Please always use ''objectid'' (as per May 2019 update). ''recordid'' still works.
  
 
[[File:APIFunctionSample5j.PNG|800px]]
 
[[File:APIFunctionSample5j.PNG|800px]]
  
 
=====List Organization associations from an application=====
 
=====List Organization associations from an application=====
'''Function Name'''  -  3.03.5.2 List Associations Method Sample 2: Organization associations from an existing application<br />
+
'''Function Name'''  -  3.04.7.2 List Associations Method Sample 2: Organization associations from an existing application<br />
 
'''Description'''  - To retrieve the list of organizations associated with an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Description'''  - To retrieve the list of organizations associated with an existing application using the [[Determining_the_opportunityid|Opportunity ID]]<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
 
'''Object Type'''  -  Submission Manager - Grant<br />
Line 282: Line 389:
  
 
Parameters used are:<br />
 
Parameters used are:<br />
''recordid'' = [[Determining_the_opportunityid|Opportunity ID]]<br />
+
''objectid'' = [[Determining_the_opportunityid|Opportunity ID]]<br />
 
''type'' = either '"contacts"' or '"organizations"'<br />
 
''type'' = either '"contacts"' or '"organizations"'<br />
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
recordid: 8276165<br />
+
objectid: 10697883<br />
 
type: organizations<br />
 
type: organizations<br />
 
--End custom parameter--
 
--End custom parameter--
 +
 +
''Note:''
 +
1. As per May 2019 upgrade, use ''objectid'' but ''recordid'' still works.
 +
2. In '''Field List''', either use organizations or companies. If organizations is used in the '''Field List''', '''type''' in the parameter should be organizations.
  
 
[[File:APIFunctionSample5k.PNG|800px]]
 
[[File:APIFunctionSample5k.PNG|800px]]
  
==='Metadata'===
+
====List System Variables====
====Get Metadata of a Universal Tracking Application====
+
=====List All System Variables=====
'''Function Name'''  -  3.04.1 Get Metadata Sample 1: CMS360°: Application Metadata<br />
+
'''Function Name'''  -  3.04.8.1 System Variables Sample 1: List<br />
'''Description'''  - To retrieve metadata of a [[Category:Universal_Tracking_Application|Universal Tracking Application]].<br />
+
'''Description'''  - Retrieves all the [[System_Variables|system variables]]<br />
'''Object Type'''  -  Case Management 360° - Case<br />
+
'''Object Type'''  -  System Variables<br />
'''Action Type '''  -  Get Meta<br />
+
'''Action Type '''  -  List<br />
'''Field List'''  - levelone.*;;leveltwo.*;;levelthree.*<br /> 
+
'''Field List'''  - sf_ID;;sf_Name;;sf_Value;; 
  
No parameters are needed to retrieve metadata.<br /> 
+
No parameters are needed to retrieve all the global [[System_Variables|system variables]].<br /> 
  
[[File:APIFunctionSample5l.PNG|800px]]
+
[[File:APIFunctionSystemVariables1.PNG|800px]]
  
====Get Metadata of Organizations====
 
<!--63342 - SmartConnect API - metadata option to include Orgs/Contacts-->
 
'''Function Name'''  -  3.04.2 Get Metadata Sample 2: Organizations Metadata<br />
 
'''Description'''  - To retrieve metadata from Organizations.<br />
 
'''Object Type'''  -  Company<br />
 
'''Action Type '''  -  Get Meta<br />
 
'''Field List'''  - companies.*
 
No parameters are needed to retrieve metadata.<br /> 
 
====Get Metadata from Contacts====
 
<!--63342 - SmartConnect API - metadata option to include Orgs/Contacts-->
 
'''Function Name'''  -  3.04.3 Get Metadata Sample 3: Users Metadata<br />
 
'''Description'''  - To retrieve metadata from Users.<br />
 
'''Object Type'''  -  User<br />
 
'''Action Type '''  -  Get Meta<br />
 
'''Field List'''  - contacts.*
 
No parameters are needed to retrieve metadata.
 
 
===Update===
 
===Update===
 +
This function will create new records or update existing records based on the selected '''Object Type'''.
 +
 
====Update====
 
====Update====
 
=====Create/Update organization record=====
 
=====Create/Update organization record=====
Line 326: Line 423:
 
'''Object Type'''  -  Company<br />
 
'''Object Type'''  -  Company<br />
 
'''Action Type '''  -  Update<br />
 
'''Action Type '''  -  Update<br />
'''Field List'''  - sf_Name;;sf_Is External;;sf_Parent Company ID;;sf_Address;;sf_Address 2;;sf_City;;sf_State / Province;;sf_Zip / Postal Code;;sf_Country;;cf_EIN Number;;cf_1523156;;sf_Category ID List<br />
+
'''Field List'''  - sf_Name;;sf_Is External;;sf_Parent Company ID;;sf_Address;;sf_Address 2;;sf_City;;sf_State / Province;;sf_Zip / Postal Code;;sf_Country;;cf_EIN Number;;cf_1523156;;sf_Category ID List
 +
 
 
<u>'''Sample 1A'''</u><br/>
 
<u>'''Sample 1A'''</u><br/>
 
'''Description'''  - Create new organization record<br/>
 
'''Description'''  - Create new organization record<br/>
 
'''Mandatory fields''' to add a new record:<br/>
 
'''Mandatory fields''' to add a new record:<br/>
'''recordid''' -  to create new record, recordid should be '0'<br/>
+
recordid -  to create new record, recordid should be '0'<br/>
'''sf_Parent Company ID''' -  is the company holder or the parent company for the organization to be added.<br/>
+
sf_Parent Company ID -  is the company holder or the parent company for the organization to be added.<br/>
'''sf_Is External''' -  either "1" for external and "0" for internal organization
+
sf_Is External -  either "1" for external and "0" for internal organization
 
+
sf_Category ID List - [[Client_Categories|Category]] of the company to be added.
 
 
'''sf_Category ID List''' - [[Client_Categories|Category]] of the company to be added.
 
  
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
Line 346: Line 442:
 
'''Description'''  - Update existing organization record<br />
 
'''Description'''  - Update existing organization record<br />
 
'''Mandatory fields''' to update existing record:<br/>
 
'''Mandatory fields''' to update existing record:<br/>
'''recordid''' - is the [[Determining_the_companyid|Company ID]] an of existing organization to update.<br/>
+
recordid - is the [[Determining_the_companyid|Company ID]] an of existing organization to update.
 +
 
 +
<br/>
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
 
jsonrset : [{"recordid":"1688403","sf_Name":"Change Company thru API"}]<br />
 
jsonrset : [{"recordid":"1688403","sf_Name":"Change Company thru API"}]<br />
Line 363: Line 461:
 
'''Description'''  - To create two new user record<br/>
 
'''Description'''  - To create two new user record<br/>
 
'''Mandatory fields''' to add new records:<br/>
 
'''Mandatory fields''' to add new records:<br/>
'''recordid''' -  to create new record, recordid should be '0'<br/>
+
recordid -  to create new record, recordid should be '0'<br/>
'''sf_Parent Company ID''' -  is the company holder or the parent company for the organization to be added.<br/>
+
sf_Parent Company ID -  is the company holder or the parent company for the organization to be added.<br/>
'''sf_Is External''' -  either "1" for external and "0" for internal organization<br/>
+
sf_Is External -  either "1" for external and "0" for internal organization<br/>
'''sf_Role ID List''' - [[Category:Roles|role]] of a user
+
sf_Role ID List - [[Category:Roles|role]] of a user
  
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
Line 375: Line 473:
  
 
<u>'''Sample 1D'''</u><br/>
 
<u>'''Sample 1D'''</u><br/>
'''Description'''  - To update last name of existing user records<br />
+
'''Description'''  - To update last name of existing user records
 +
 
 +
<br />
 
'''Mandatory fields''' to update records:<br/>
 
'''Mandatory fields''' to update records:<br/>
'''recordid''' - is the [[Determining_the_userid|User ID]] of existing user.
+
recordid - is the [[Determining_the_userid|User ID]] of existing user.
  
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
Line 384: Line 484:
  
 
[[File:APIFunctionSample6c.PNG|800px]]
 
[[File:APIFunctionSample6c.PNG|800px]]
 +
 +
=====Create/Update UTA L1 record=====
 +
'''Function Name'''  -  3.05.1.3 Create/update UTA L1 record<br />
 +
'''Description'''  - Create new records or update UTA L1 records<br />
 +
'''Object Type'''  -  Submission Manager - Grant <br />
 +
'''Action Type '''  -  Update<br />
 +
'''Field List'''  - sf_Name;;sf_Type ID;;sf_Status ID;;sf_Company ID;;sf_Person ID;;sf_Owner ID;;sf_Start Date;;sf_End Date;;cf_1523228
 +
 +
<u>'''Sample 1E '''</u><br/>
 +
'''Description''' - to add a new UTA L1 record
 +
 +
<br />
 +
'''Mandatory fields''' to add new records:<br />
 +
recordid - to create new record, recordid should be '0'<br />
 +
sf_Type ID - assigned [[Determining_the_typeid#Level_1_Template|Type ID]] of the new UTA L1 record.<br />
 +
sf_Status ID - assigned [[Determining_the_statusid|Status ID]] of the new UTA L1 record.<br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"0","sf_Type ID":"20654","sf_Status ID":"25178","sf_Name":"Test 1 Application","sf_Customer":"1767970","sf_Person":"88159402","sf_Owner":"3108429","sf_Start Date":"2018-01-01","sf_End Date":"2018-12-31"}]<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionUpdateUtaL1b.PNG|800px]]
 +
 +
<u>'''Sample 1F'''</u><br />
 +
'''Description''' - To update value of a custom field of an existing UTA L1 record.
 +
 +
<br />
 +
''' Mandatory fields''' to update existing records:<br />
 +
recordid - is the [[Determining_the_opportunityid|Opportunity ID]] of existing record.<br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"8276165","cf_1523228":"Change value of this custom field thru API function"}]<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionUpdateUtaL1a.PNG|800px]]
 +
 +
=====Create/Update UTA L2 record=====
 +
'''Function Name'''  -  3.05.1.4 Create/update UTA L2 record<br />
 +
'''Description'''  - Create new records or update UTA L2 records<br />
 +
'''Object Type'''  -  Submission Manager - Activity <br />
 +
'''Action Type '''  -  Update<br />
 +
'''Field List'''  - sf_Subject;;sf_Type ID;;sf_Status ID;;sf_Owner ID;;sf_Start Date;;sf_End Date;;sf_Parent ID;;cf_Payment Notes
 +
 +
<u>'''Sample 1G '''</u><br/>
 +
'''Description''' - to add a new UTA L2 record
 +
 +
<br />
 +
'''Mandatory fields''' to add new records:<br />
 +
recordid - to create new record, recordid should be '0'<br />
 +
sf_Parent ID - parent of the UTA L2 record. use "objectid" in place of sf_Parent ID to update<br />
 +
sf_Type ID - assigned [[Determining_the_typeid#Level_2_Template|Type ID]] of the new UTA L2 record.<br />
 +
sf_Status ID - assigned [[Determining_the_statusid|Status ID]] of the new UTA L2 record.<br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"0","objectid":"10697883","sf_Type ID":"49096","sf_Status ID":"49093","sf_Start Date":"2018-10-01","sf_End Date":"2018-11-01","cf_Payment Notes":"new record added as an example"}]<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionUpdateUtaL2a.PNG|800px]]
 +
 +
<u>'''Sample 1H '''</u><br/>
 +
'''Description''' - to update existing UTA L2 record
 +
 +
<br />
 +
'''Mandatory fields''' to update a custom field "Payment Notes" of an existing records:<br />
 +
recordid - is the [[Determining_the_eventid|Event ID]] of existing record.<br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"10020959 ","cf_Payment Notes":"Change value of this custom field thru API function"}]<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionUpdateUtaL2b.PNG|800px]]
  
 
====Update Multiple Addresses====
 
====Update Multiple Addresses====
Line 394: Line 561:
  
 
<u>'''Sample 2A'''</u><br/>
 
<u>'''Sample 2A'''</u><br/>
'''Description'''  - To create new multiple address for an existing company<br/>
+
'''Description'''  - To create new multiple address for an existing company
 +
 
 +
<br/>
 
'''Mandatory fields''' to add new records:<br/>
 
'''Mandatory fields''' to add new records:<br/>
'''recordid''' -  to create new record, recordid should be '0'<br/>
+
recordid -  to create new record, recordid should be '0'<br/>
'''sf_Object ID''' -  is the [[Determining_the_companyid|Company ID]] where the address will be attached to.<br/>
+
sf_Object ID -  is the [[Determining_the_companyid|Company ID]] where the address will be attached to.<br/>
'''sf_Type ID''' -  multiple address type
+
sf_Type ID -  multiple address type
  
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
Line 407: Line 576:
  
 
<u>'''Sample 2B'''</u><br/>
 
<u>'''Sample 2B'''</u><br/>
'''Description'''  - To update address of existing multiple address record<br />
+
'''Description'''  - To update address of existing multiple address record
 +
 
 +
<br />
 
'''Mandatory fields''' to update records:<br/>
 
'''Mandatory fields''' to update records:<br/>
'''recordid''' - is the unique identifier from the Association table.
+
recordid - is the unique identifier from the Association table.
  
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
Line 417: Line 588:
 
[[File:APIFunctionSample6f.PNG|800px]]
 
[[File:APIFunctionSample6f.PNG|800px]]
  
 +
====Update Associations====
 +
Update function for association can add new association records or update the role of an existing association record.<br />
 +
A. When this function is used to add new record, the following parameters are mandatory: objectid, companyid or contactid, rolename or roleid.<br />
 +
B. When this function is used to update existing association records, it can only update the role of existing association records. Mandatory parameters are objectid, companyid or contactid, rolename or roleid and associationid. When the existing record is updated to a new role, all custom fields of the association from the previous role will be deleted.<br />
 +
If you need to change company/contact, the record will need to be deleted and then add a new record for a new association.
  
 
====Update Associations====
 
 
=====Create/Update contact associations of a Level 1=====
 
=====Create/Update contact associations of a Level 1=====
 
'''Function Name'''  -  3.05.3.1 Update Associations Method Sample 1: update contact associations of an existing Level 1<br />
 
'''Function Name'''  -  3.05.3.1 Update Associations Method Sample 1: update contact associations of an existing Level 1<br />
Line 428: Line 602:
  
 
<u>'''Sample 3A'''</u><br/>
 
<u>'''Sample 3A'''</u><br/>
'''Description'''  - To create new user associated with an existing Submission Manager Level 1<br/>
+
'''Description'''  - To create new user associated with an existing Submission Manager Level 1
 +
 
 +
<br/>
 
'''Mandatory fields''' to add new records:<br/>
 
'''Mandatory fields''' to add new records:<br/>
'''recordid''' -  is the [[Determining_the_companyid|Company ID]] where the user will be associated to.<br/>
+
objectid -  is the [[Determining_the_opportunityid|Opportunity ID]] where the user will be associated to.<br/>
'''isupdate''' -  "1" for yes to update and "0" for to add new record <br/>
+
contactid - [[Determining_the_userid|User ID]]<br/>
'''rolename''' -  association role of the user
+
rolename / roleid -  association role of the user<br/>
 +
isupdate -  "1" for yes to update and "0" for to add new record
 +
 
 +
 
 +
Parameter Sample#1<br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"10697883","contacts":[{"contactid":"3108577","rolename":"Meeting Participant","isupdate":"0"}]}] <br />
 +
--End custom parameter--
  
 +
Parameter Sample#2 - Starting May 2019 Upgrade<br />
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
jsonrset : [{"recordid":"8276165","contacts":[{"contactid":"3108577","rolename":"Meeting Participant","isupdate":"0"}]}] <br />
+
jsonrset : [{"recordid":"10697883","contacts":[{"contactid":"3108577","rolename":"Signee Internal"}]}] <br />
 +
--End custom parameter--
 +
 
 +
Parameter Sample#3 - adding multiple contacts sample<br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"10697883","contacts":[{"contactid":"3108226","rolename":"Signee Internal"},{"contactid":"3108119","rolename":"Meeting Participant"}]}] <br />
 
--End custom parameter--
 
--End custom parameter--
  
 
[[File:APIFunctionSample6g.PNG|800px]]
 
[[File:APIFunctionSample6g.PNG|800px]]
 +
  
 
<u>'''Sample 3B'''</u><br/>
 
<u>'''Sample 3B'''</u><br/>
'''Description'''  - To update association information of an existing Submission Manager Level 1 record<br />
+
'''Description'''  - To update association information of an existing Submission Manager Level 1 record
 +
 
 +
<br />
 
'''Mandatory fields''' to update records:<br/>
 
'''Mandatory fields''' to update records:<br/>
'''recordid''' - is the [[Determining_the_companyid|Company ID]] where the user will be associated to.<br/>
+
objectid - is the [[Determining_the_opportunityid|Opportunity ID]] where the user will be associated to.<br/>
'''isupdate''' -  "1" for yes and "0" for no
+
isupdate -  "1" for yes and "0" for no
 +
contactid - [[Determining_the_userid|User ID]]
 +
associationid - is the system's unique numerical value associated with each Association record
 +
rolename / roleid -[[Determining the roleid|'''Role ID''']]
  
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
jsonrset : [{"recordid":"8276165","contacts":[{"contactid":"3108429","rolename":"Signee Internal","isupdate":"1"}]}]<br />
+
jsonrset : [{"recordid":"10697883","contacts":[{"isupdate":"1","contactid":"88435720","associationid":"2829620","rolename":"Signee Internal", "cf_My customfield": "updated value"}]}]<br />
 
--End custom parameter--
 
--End custom parameter--
  
 
[[File:APIFunctionSample6h.PNG|800px]]
 
[[File:APIFunctionSample6h.PNG|800px]]
  
===Download File===
+
====Update System Variables====
 +
=====Update a System Variable=====
 +
'''Function Name'''  -  3.05.4.1 System Variables Sample 1: Update<br />
 +
'''Description'''  - Updates the value or the name of an existing [[System_Variables|system variables]]<br />
 +
'''Object Type'''  -  System Variables<br />
 +
'''Action Type '''  - Update<br />
 +
'''Field List'''  - sf_ID;;sf_Name;;sf_Value;; 
 +
 
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"9313","sf_Value":"2"}]<br />
 +
--End custom parameter--
 +
 
 +
[[File:APIFunctionSystemVariables3.PNG|800px]]
 +
 
 +
 
 +
 
 +
===Upload/Download File===
 +
This function will download the file.
 +
 
 
====Download File(s) from a company profile====
 
====Download File(s) from a company profile====
 
<!--71968 - SmartConnect Function - Download File does not download the file-->
 
<!--71968 - SmartConnect Function - Download File does not download the file-->
Line 461: Line 674:
 
'''Field List'''  -
 
'''Field List'''  -
 
'''Mandatory fields''' to download a file:<br/>
 
'''Mandatory fields''' to download a file:<br/>
'''filename''' - name of the file to be downloaded.<br/>
+
filename - name of the file to be downloaded.<br/>
'''objectid''' - is the [[Determining_the_companyid|Company ID]] where the file is attached to.<br/>
+
objectid - is the [[Determining_the_companyid|Company ID]] where the file is attached to.<br/>
'''fieldid''' - [[Custom_Field_ID|Custom Field ID]] of the Organization record that is either a [[Custom_Field_Type:_Upload_-_Single_File_Storage|single file type]] or [[Custom_Field_Type:_Upload_-_Multiple_Files_Storage|multiple file type]].
+
fieldid - [[Custom_Field_ID|Custom Field ID]] of the Organization record that is either a [[Custom_Field_Type:_Upload_-_Single_File_Storage|single file type]] or [[Custom_Field_Type:_Upload_-_Multiple_Files_Storage|multiple file type]].
 
--Begin custom parameter --<br />
 
--Begin custom parameter --<br />
 
filename: Test.txt<br />
 
filename: Test.txt<br />
 +
objectid: 1688407<br />
 +
fieldid: 1523157<br />
 +
--End custom parameter--<br />
 +
Note: In the API website, the content of the file will be shown in the Response section as seen below.
 +
<br />
 +
[[File:APIFunctionDownloadFile1.PNG|800px]]
 +
====Upload File(s) to a field in the company profile====
 +
<!--122516 - API file upload-->
 +
'''Function Name'''  -  3.06.2 Upload File Method Sample 1: Upload file(s) to an existing company record<br />
 +
'''Description'''  - Upload the file based on the criteria indicated.<br />
 +
'''Object Type'''  -  Company<br />
 +
'''Action Type '''  -  Upload Files<br />
 +
'''Field List'''  -  cf_123456
 +
'''
 +
 Mandatory fields''' to upload a file:
 +
objectid - is the [wiki/Determining_the_companyid Company ID] where the file is attached to.<br />
 +
fieldid - [wiki/Custom_Field_ID Custom Field ID] of the Organization record that is either a [wiki/Custom_Field_Type:_Upload_-_Single_File_Storage single file type] or [wiki/Custom_Field_Type:_Upload_-_Multiple_Files_Storage multiple file type].
 +
--Begin custom parameter --<br />
 
objectid: 1688407<br />
 
objectid: 1688407<br />
 
fieldid: 1523157<br />
 
fieldid: 1523157<br />
 
--End custom parameter--
 
--End custom parameter--
 +
<br />Note: To test use Postman.
 +
The API URL for upload file will be:
 +
https://alias.smartsimple.com/API/1/company/?alias=xxxxx&companyid=xxxxxx&username=xxxxx&password=xxxxx&apitoken=xxxxx&objectid=xxxxx&fieldid=xxxxx<br />with the file included in the form data, use POST method.
 
===Search File===
 
===Search File===
 +
This function will retrieve a list of files by searching for a keyword.
 +
 
====Search Files Method Sample 1: Search Case Documents====
 
====Search Files Method Sample 1: Search Case Documents====
 
'''Function Name'''  -  3.07.1 Search Files Method Sample 1: Search Case Documents<br />
 
'''Function Name'''  -  3.07.1 Search Files Method Sample 1: Search Case Documents<br />
Line 483: Line 719:
 
[[File:APIFunctionSample8.PNG|800px]]
 
[[File:APIFunctionSample8.PNG|800px]]
  
===System Variables===
+
===Variables Replace===
<!--71972 - SmartConnect Function: System Variables - does not show when using '/devtools/dev_api.html'-->
+
This function will pass the parameters: 1. objectid and 2. content (block of text) which will be run thru the variable processor and return the results as JSON.
====List====
+
 
'''Function Name'''  -  3.08.1 System Variables Sample 1: List<br />
+
====Variables Replace - Company====
'''Description'''  - Retrieves all the global [[System_Variables|system variables]]<br />
+
'''Function Name'''  -  3.09.1 System Variables Replace - Company<br />
'''Object Type'''  -  System Variables<br />
+
'''Description'''  - This function will send the objectid=[[Determining_the_companyid|Company ID]] and the desired content with system variables. It returns a json format of the content with all the [[System_Variables|system variables]] replaced by the variable processor. <br />
'''Action Type '''  -  List<br />
+
'''Object Type'''  -  Company<br />
'''Field List'''  - sf_ID;;sf_Name;;sf_Value;;<br /> 
+
'''Action Type '''  - Variables Replace<br />
 +
'''Field List'''  -
  
[[File:APIFunctionSystemVariables1.PNG|800px]]
+
--Begin custom parameter --<br />
 +
objectid: 825646<br />
 +
content: Company name is @name@, located at @address@, @city@, @country@. Primary Contact is @primarycontact@.<br />
 +
--End custom parameter--
  
====Get====
 
'''Function Name'''  -  3.08.2 System Variables Sample 1: Get<br />
 
'''Description'''  - Get detailed information on the global [[System_Variables|system variables]]<br />
 
'''Object Type'''  -  System Variables<br />
 
'''Action Type '''  -  Get<br />
 
'''Field List'''  - sf_ID;;sf_Name;;sf_Value;;<br /> 
 
  
 +
[[File:APIFunctionVariablesReplace1.PNG|800px]]
  
 +
====Variables Replace - User====
 +
'''Function Name'''  -  3.09.2 System Variables Replace - User<br />
 +
'''Description'''  - This function will send the objectid=[[Determining_the_userid|User ID]] and the desired content with system variables. It returns a json format of the content with all the [[System_Variables|system variables]] replaced by the variable processor. <br />
 +
'''Object Type'''  -  User<br />
 +
'''Action Type '''  - Variables Replace<br />
 +
'''Field List'''  -  
  
No parameters are needed to retrieve all the global [[System_Variables|system variables]].<br /> 
+
--Begin custom parameter --<br />
 +
objectid: 88159402<br />
 +
content: Hello @firstname@ (@userid@), from company @company@, located in @company.address@.<br />
 +
--End custom parameter--
  
====Update====
+
[[File:APIFunctionVariablesReplace2.PNG|800px]]
'''Function Name'''  -  3.08.3 System Variables Sample 1: Update<br />
 
'''Description'''  - Updates a [[System_Variables|system variables]]<br />
 
'''Object Type'''  -  System Variables<br />
 
'''Action Type '''  - Update<br />
 
'''Field List'''  - sf_ID;;sf_Name;;sf_Value;;<br /> 
 
  
===Variables Replace===
 
====Variables Replace - Company====
 
====Variables Replace - User====
 
 
====Variables Replace - UTA L1====
 
====Variables Replace - UTA L1====
 +
'''Function Name'''  -  3.09.3 System Variables Replace - UTA L1<br />
 +
'''Description'''  - This function will send the objectid=[[Determining_the_opportunityid|Opportunity ID]] and the desired content with system variables. It returns a json format of the content with all the [[System_Variables|system variables]] replaced by the variable processor. <br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  - Variables Replace<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
objectid: 8276165<br />
 +
content: This application is called "@name@", under the status of "@status@". The owner on this record is "@owner.fullname@", belonging to "@owner.company.name@". The company is "@client.name@". Parent Company is "@company.parent.name@.<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionVariablesReplace3.PNG|800px]]
 +
 
====Variables Replace - UTA L2====
 
====Variables Replace - UTA L2====
 +
'''Function Name'''  -  3.09.4 System Variables Replace - UTA L2<br />
 +
'''Description'''  - This function will send the objectid=[[Determining_the_eventid|Event ID]] and the desired content with system variables. It returns a json format of the content with all the [[System_Variables|system variables]] replaced by the variable processor. <br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  - Variables Replace<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
objectid: 18431901<br />
 +
content: This is a level two id record with eventid of"@eventid@" with L2 Type of "@type@" and status of "@status@". The parent record id is "@parent.opportunityid@". The parent Company's address is "@parent.company.address@".<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionVariablesReplace4.PNG|800px]]
 +
 
====Variables Replace - UTA L3====
 
====Variables Replace - UTA L3====
 +
'''Function Name'''  -  3.09.5 System Variables Replace - UTA L3<br />
 +
'''Description'''  - This function will send the objectid=[[Determining_the_eventid|Event ID]] and the desired content with system variables. It returns a json format of the content with all the [[System_Variables|system variables]] replaced by the variable processor. <br />
 +
'''Object Type'''  -  Submission Manager - Disbursement<br />
 +
'''Action Type '''  - Variables Replace<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
objectid: 18432872<br />
 +
content: This is L3 record id "@eventid@", of status "@status@". The parent L2 Type is "@parent.type@". The L1 company is "@parent.parent.company.name@".<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionVariablesReplace5.PNG|800px]]
 +
 +
===Delete===
 +
====Delete a Single Organization Record====
 +
<!--82768 - SmartConnect Function to delete objects-->
 +
'''Function Name'''  -  3.09.1 Delete Organization Record<br />
 +
'''Description'''  - Delete existing organization record <br />
 +
'''Object Type'''  -  Company<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"1924628"}]<br />
 +
--End custom parameter--
 +
 +
[[File:Delete_org.PNG|800px]]
 +
 +
====Delete a Single Contact Record====
 +
'''Function Name'''  -  3.09.2 Delete Contact Record<br />
 +
'''Description'''  - Delete existing user record <br />
 +
'''Object Type'''  -  User<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"88173129"}]<br />
 +
--End custom parameter--
 +
 +
[[File:Delete_user.PNG|800px]]
 +
 +
====Delete Organization Records (Batch delete)====
 +
<!--89075 - SmartConnect batch delete-->
 +
'''Function Name'''  -  3.09.1 Delete Organization Records<br />
 +
'''Description'''  - Delete existing organization records <br />
 +
'''Object Type'''  -  Company<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"1924629"},{"recordid":"1924630"},{"recordid":"1924631"}]<br />
 +
--End custom parameter--<br />
 +
Result:<br />
 +
{"records":[{"recordid":"1924629","status":"Object Deleted"},<br />
 +
{"recordid":"1924630","status":"Object Deleted"},<br />
 +
{"recordid":"1924631","status":"Object Deleted"}],"message":{}}
 +
====Delete a Single Contact Record====
 +
'''Function Name'''  -  3.09.2 Delete Contact Record<br />
 +
'''Description'''  - Delete existing user record <br />
 +
'''Object Type'''  -  User<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"88173129"}]<br />
 +
--End custom parameter--
 +
 +
====Delete a Single Grant Application Record====
 +
'''Function Name'''  -  3.09.3 Delete UTA Level 1 Record<br />
 +
'''Description'''  - Delete existing UTA Level 1 record <br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"8276165"}]<br />
 +
--End custom parameter--
 +
 +
[[File:Delete_uta1.PNG|800px]]
 +
 +
====Delete a Single Grant Application Payment Record====
 +
'''Function Name'''  -  3.09.4 Delete UTA Level 2 Record<br />
 +
'''Description'''  - Delete existing UTA Level 2 record <br />
 +
'''Object Type'''  -  Submission Manager - Activity<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"10021111"}]<br />
 +
--End custom parameter--
 +
 +
[[File:Delete_uta2.PNG|800px]]
 +
 +
====Delete Association Record====
 +
'''Function Name'''  -  3.09.5 Delete Association Records<br />
 +
'''Description'''  - Delete existing contact associated with an existing [[Category:Universal_Tracking_Application|Universal Tracking Application]] Level 1 record<br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  -  Update Associations<br />
 +
'''Field List'''  - contacts.*
 +
 +
<u>'''Sample'''</u><br/>
 +
'''Description'''  - To delete existing user associated with an existing Submission Manager Level 1<br/>
 +
'''Mandatory fields'''<br/>
 +
objectid -  is the [[Universal Tracking Application]] Level 1 where the user will be associated with.<br/>
 +
isdelete -  "1" for yes to delete<br/>
 +
rolename / roleid -  association role of the user
 +
contactid - [[Determining_the_userid|User ID]]
 +
associationid - is the system's unique numerical value associated with each Association record
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : {"objectid": "10697883", "contacts" : [{"isdelete": "1", "contactid": "3108991", "rolename": "Meeting Participant","associationid":"2829623"}]}<br />
 +
--End custom parameter--
 +
 +
[[File:APIFunctionDeleteL1User.PNG|800px]]
 +
 +
====Delete Multiple Upload Files====
 +
<!-- 138847 - API function to delete files -->
 +
After the July 2023 upgrade, new function to delete files from Upload - Multiple Files Storage fields was added.
 +
'''Function Name'''  -  3.09.6 Delete Files in Level One<br />
 +
'''Description'''  - Delete existing files from a multiple file field in [[Category:Universal_Tracking_Application|Universal Tracking Application]] Level 1 record<br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  -  Files - Delete<br />
 +
'''Field List'''  - cf_multiplefilefield
 +
 +
 +
<u>'''Sample'''</u><br/>
 +
'''Description'''  - To delete existing files from a multiple file field in Submission Manager Level 1<br/>
 +
'''Mandatory fields'''<br/>
 +
objectid -  is the [[Universal Tracking Application]] Level 1 id (opportunityid) where the file to be deleted is located.<br/>
 +
fieldid -  the field id of the multiple file field<br/>
 +
filename -  the filename of the file to be deleted
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"objectid":"1223454","fieldid":"3163245","filename":"147807_dup.png"},{"objectid":"1223454","fieldid":"2697568","filename":"128895.png"}]<br />
 +
--End custom parameter--
 +
 +
===Transaction===
 +
<!--72195 - SmartConnect Function on Transaction  Applied to prod for May 2019 Upgrade-->
 +
* <span style="color: #ff0000;">Available after May 2019 upgrade.</span>
 +
 +
* Transaction should be [[Transaction_Attribution|configured]] before using this API function. Transactions can be attached to an object (Organization or User or UTA L1/L2).
 +
 +
====Get Transaction Record====
 +
=====Get a Transaction Record from an Organization=====
 +
'''Function Name'''  -  3.10.1.1 Get a Transaction Record from an Organization<br />
 +
'''Description'''  - Retrieve an organization transaction record <br />
 +
'''Object Type'''  -  Company Transactions<br />
 +
'''Action Type '''  - Get<br />
 +
'''Field List''' - sf_Transaction ID;;sf_Object ID;;sf_Description;;sf_Subject;;sf_Type;;sf_Status;;sf_Created Date;;sf_Modified Date;;sf_Created By;;sf_Updated By
 +
 +
'''Mandatory fields''' to get a transaction record:<br/>
 +
recordid -  the unique identifier from the transaction table.
 +
 +
--Begin custom parameter --<br />
 +
recordid:2738520<br />
 +
othersettings :<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionGet1.PNG|800px]]
 +
 +
=====Retrieve a Transaction Record from a Submission Manager L1=====
 +
'''Function Name'''  -  3.10.1.2 Get Method Sample 4: Retrieve a Transaction Record from a Submission Manager L1<br />
 +
'''Description'''  - Retrieve a transaction record <br />
 +
'''Object Type'''  -  Submission Manager - Transactions<br />
 +
'''Action Type '''  - Get<br />
 +
'''Field List''' - sf_End Date;;sf_Description;;sf_Subject;;sf_Start Date;;sf_Status;;sf_Modified Date;;sf_Updated By;;sf_Created Date;;sf_Created By;;sf_Type;;sf_Transaction ID;;sf_Object ID
 +
 +
'''Mandatory fields''' to get a transaction record:<br/>
 +
recordid -  the unique identifier from the transaction table.
 +
 +
--Begin custom parameter --<br />
 +
recordid:2738527<br />
 +
othersettings :<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionGet2.PNG|800px]]
 +
 +
====List Transaction Record====
 +
'''Function Name'''  -  3.10.2 List Transaction Records<br />
 +
'''Description'''  - Get a list of all transaction records <br />
 +
'''Object Type'''  -  Submission Manager - Transactions<br />
 +
'''Action Type '''  - List<br />
 +
'''Field List'''  -  sf_End Date;;sf_Description;;sf_Subject;;sf_Start Date;;sf_Status;;sf_Modified Date;;sf_Updated By;;sf_Created Date;;sf_Created By;;sf_Type;;sf_Transaction ID;;sf_Object ID
 +
 +
<u>'''Sample 2A'''</u><br/>
 +
'''Description'''  - Retrieve list of all transaction records <br />
 +
--Begin custom parameter --<br />
 +
criteria:<br />
 +
sortby:<br />
 +
othersettings :<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionList.PNG|800px]]
 +
 +
<u>'''Sample 2B'''</u><br/>
 +
'''Description'''  - Retrieve a list of transaction records filtered with Transaction Type <br />
 +
--Begin custom parameter --<br />
 +
criteria : [{"andor":"and","field":"sf_Type","operator":"=","value":"Transaction_in_Org"}]<br />
 +
sortby:<br />
 +
othersettings :<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionList2.PNG|800px]]
 +
 +
====Update Transaction Record====
 +
=====Create or Update Transaction Record in Organization Profile=====
 +
'''Function Name'''  -  3.10.3.1 Create or Update Transaction Record in Organization Profile<br />
 +
'''Description'''  - Create new transaction record attached to a Organization record <br />
 +
'''Object Type'''  -  Company Transactions<br />
 +
'''Action Type '''  - Update<br />
 +
'''Field List'''  -  sf_Transaction ID;;sf_Object ID;;sf_Description;;sf_Subject;;sf_Type;;sf_Status;;sf_Created Date;;sf_Modified Date;;sf_Created By;;sf_Updated By
 +
 +
'''Mandatory fields''' to add a new transaction record:<br/>
 +
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'<br/>
 +
sf_Object ID -  is the object(Organization, User, UTA L1/L2) the transaction would be attached to.<br/>
 +
sf_Type -  [[Transaction_Custom_and_Standard_Field_Types|Transaction Type]] of the transaction record.<br/>
 +
sf_Status - [[Transaction_Status|Transaction Status]] of the transaction record.
 +
 +
<u>'''Sample 3A'''</u><br/>
 +
'''Description'''  - Create new transaction record <br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"0","sf_Object ID":"10697883","sf_Type":"2184","sf_Status":"82626","sf_Subject":"Test Transaction Record"}]<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionUpdate2.PNG|800px]]
 +
 +
<u>'''Sample 3B'''</u><br/>
 +
'''Description'''  - Update existing transaction record <br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"2738520","sf_Subject":"Changed subject thru api"}]<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionUpdate1.PNG|800px]]
 +
 +
=====Create or Update Transaction Record in Submission Manager L1=====
 +
<u>'''Sample A''' - creating new transaction record from API v1</u><br/>
 +
'''Function Name'''  -  3.10.3.2 Create or Update Transaction Record in Submission Manager L1<br />
 +
'''Description'''  - Create new transaction record attached to a Submission Manager L1 record <br />
 +
'''Object Type'''  -  Submission Manager - Transactions<br />
 +
'''Action Type '''  - Update<br />
 +
'''Field List'''  -  sf_Object ID;;sf_Subject;;sf_Status;;sf_Type
 +
 +
'''Mandatory fields''' to add a new transaction record:<br/>
 +
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'<br/>
 +
sf_Object ID -  is the object(Organization, User, UTA L1/L2) the transaction would be attached to.<br/>
 +
sf_Type -  [[Transaction_Custom_and_Standard_Field_Types|Transaction Type]] of the transaction record.<br/>
 +
sf_Status - [[Transaction_Status|Transaction Status]] of the transaction record.
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"0","sf_Object ID":"10697883","sf_Type":"2184","sf_Status":"82626","sf_Subject":"Test Transaction Record"}]<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionUpdate.PNG|800px]]
 +
 +
<u>'''Sample B''' - creating new transaction record in Submission Mgr L1 from API v2</u><br/>
 +
<!--134010 - SmartConnect API link and unlink transactions from Objects-->
 +
 +
'''Function Name'''  -  3.10.3.2  Create or Update Transaction Record in Submission Manager L1 (API v2)<br />
 +
'''Description'''  - Create new transaction record attached to a Submission Manager L1 record <br />
 +
'''Object Type'''  -  Submission Manager - Transactions<br />
 +
'''Action Type '''  - Update<br />
 +
'''Field List'''  -  sf_Object ID;;sf_Subject;;sf_Status;;sf_Type;;cf_Remarks;;
 +
 +
Note that translevel is new in version 2 where translevel=1 for UTA L1 and translevel=2 for UTA L2.
 +
 +
'''Mandatory fields''' to add a new transaction record:<br/>
 +
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'<br/>
 +
sf_Object ID -  is the object(UTA L1) the transaction would be attached to.<br/>
 +
sf_Type -  [[Transaction_Custom_and_Standard_Field_Types|Transaction Type]] of the transaction record.<br/>
 +
sf_Status - [[Transaction_Status|Transaction Status]] of the transaction record.<br/>
 +
translevel -  is the UTA Level (UTA L1/L2) the transaction would be attached to. <span style="color: #ff0000;">(NEW that is implemented in API v2)</span>
 +
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"0","sf_Object ID":"10697883","sf_Type":"2119","sf_Status":"82626","translevel":"1","sf_Subject":"Test Transaction Record"}]<br />
 +
--End custom parameter--
 +
 +
'''<span style="color: #ff0000;">New Endpoint</span>: '''/API/2/transactions/
 +
 +
[[File:Transactions_01.png|800px]]
 +
 +
 +
<u>'''Sample C''' - creating new transaction record in Submission Mgr L2 from API v2</u><br/>
 +
<!--134010 - SmartConnect API link and unlink transactions from Objects--><br/>
 +
 '''Function Name'''  -  3.10.3.2 Create or Update Transaction Record in Submission Manager L2 (API v2)<br/>
 +
 '''Description'''  - Create new transaction record attached to a Submission Manager L2 record<br/>
 +
 '''Object Type'''  -  Submission Manager - Transactions<br/>
 +
 '''Action Type '''  - Update<br/>
 +
 '''Field List'''  -  sf_Object ID;;sf_Subject;;sf_Status;;sf_Type;;cf_Remarks;;<br/>
 +
 +
Note that translevel is new in version 2 where translevel=1 for UTA L1 and translevel=2 for UTA L2.<br/>
 +
 +
'''Mandatory fields''' to add a new transaction record:<br/>
 +
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'<br/>
 +
sf_Object ID -  is the object(UTA L2) the transaction would be attached to.<br/>
 +
sf_Type -  [[Transaction_Custom_and_Standard_Field_Types|Transaction Type]] of the transaction record.<br/>
 +
sf_Status - [[Transaction_Status|Transaction Status]] of the transaction record.<br/>
 +
translevel -  is the UTA Level (UTA L1/L2) the transaction would be attached to. <span style="color: #ff0000;">(NEW that is implemented in API v2)</span><br/>
 +
 +
--Begin custom parameter --<br/>
 +
 jsonrset : [{"recordid":"0","sf_Object ID":"10697974","sf_Type":"2184","sf_Status":"82626","sf_Subject":"Test Transaction Record","translevel":"2"}]<br/>
 +
 --End custom parameter--<br/>
 +
 +
'''<span style="color: #ff0000;">New Endpoint</span>: '''/API/2/transactions/<br/>
 +
 +
[[File:Transactions_02.png|800px]]
 +
 +
====Delete Transaction Record====
 +
'''Function Name'''  -  3.10.4 Delete Transaction Record<br />
 +
'''Description'''  - Delete a transaction record <br />
 +
'''Object Type'''  -  Company Transactions<br />
 +
'''Action Type '''  - Delete<br />
 +
'''Field List'''  -  
 +
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"recordid":"2738523"}]<br />
 +
--End custom parameter--
 +
 +
[[File:TransactionDelete1.PNG|800px]]
 +
 +
 +
 +
====Link/Unlink Transaction Record from other objects====
 +
<!--134010 - SmartConnect API link and unlink transactions from Objects-->
 +
This new feature to link/unlink transactions is only available in APIv2 and only for L1 & L2 transactions.
 +
 +
 +
<u>'''Sample A - Link existing transactions to an existing L1'''</u><br/>
 +
'''Function Name'''  -   Link transaction record to an existing Submission Manager L1<br data-attributes="%20/">
 +
 '''Description'''  - Link existing company transaction record to an existing Submission Manager L1 record<br data-attributes="%20/">
 +
 '''Object Type'''  -  Submission Manager - Transactions<br data-attributes="%20/">
 +
 '''Action Type '''  - Link / Unlink<br data-attributes="%20/">
 +
 '''Field List'''  -  cf_5469887
 +
 +
'''Mandatory fields''' 
 +
sf_Object ID -  is the object(UTA L1 id) the transaction would be attached to. <br/>
 +
translevel -  level in the UTA to link the transaction to.<br/>
 +
sf_ transaction id -  is the existing transaction record id.<br/>
 +
islink -  indicates to link the transaction to a record.<br/>
 +
cf_5469887 -  transaction custom field.<br/>
 +
 +
--Begin custom parameter --<br/>
 +
 jsonrset : [{"recordid":"0","sf_Object ID":"1123456","translevel":"1","cf_5469887":"Test linking Transaction to SML1","sf_transaction id":"6165326","islink":"1"}]<br/>
 +
 --End custom parameter--<br/>
 +
 +
<u>'''Sample B - Unlink existing transactions to an existing L1'''</u><br data-attributes="/">
 +
 '''Function Name'''  -   Unlink transaction record to an existing Submission Manager L1<br/>
 +
  '''Description'''  - Unlink existing company transaction record from the Submission Manager L1 record<br/>
 +
  '''Object Type'''  -  Submission Manager - Transactions<br/>
 +
  '''Action Type '''  - Link / Unlink<br/>
 +
  '''Field List'''  -  
 +
 +
'''Mandatory fields'''<br/>
 +
sf_Object ID -  is the object(UTA L1 id) the transaction would be attached to.<br/>
 +
translevel -  level in the UTA to link the transaction to.<br/>
 +
sf_ transaction id -  is the existing transaction record id.<br/>
 +
unlink -  indicates to link the transaction to a record.<br/>
 +
 +
--Begin custom parameter --<br/>
 +
  jsonrset : [{"sf_Object ID":"1123456","translevel":"1","sf_transaction id":"6165326","unlink":"1"}]<br/>
 +
--End custom parameter--<br/>
 +
 +
<u>'''Sample C - Link existing transactions to an existing L2'''</u><br data-attributes="/">
 +
 '''Function Name'''  -   Link transaction record to an existing Submission Manager L2<br/>
 +
  '''Description'''  - Link existing company transaction record to an existing Submission Manager L2 record<br/>
 +
  '''Object Type'''  -  Submission Manager - Transactions<br/>
 +
  '''Action Type '''  - Link / Unlink<br/>
 +
  '''Field List'''  -  cf_5469887
 +
 +
'''Mandatory fields''' <br/>
 +
sf_Object ID -  is the object(UTA L2 id) the transaction would be attached to.<br/>
 +
translevel -  level in the UTA to link the transaction to.<br/>
 +
sf_ transaction id -  is the existing transaction record id.<br/>
 +
islink -  indicates to link the transaction to a record.<br/>
 +
cf_5469887 -  transaction custom field.<br/>
 +
 +
--Begin custom parameter --<br/>
 +
  jsonrset : [{"recordid":"0","sf_Object ID":"50268865","translevel":"2","cf_5469887":"Test linking Transaction to SML2","sf_transaction id":"6165326","islink":"1"}]<br/>
 +
--End custom parameter--<br/>
 +
 +
<u>'''Sample D - Unlink existing transactions to an existing L2'''</u><br/>
 +
 '''Function Name'''  -   Unlink transaction record to an existing Submission Manager L2<br/>
 +
  '''Description'''  - Unlink existing company transaction record from the Submission Manager L2 record<br/>
 +
  '''Object Type'''  -  Submission Manager - Transactions<br/>
 +
  '''Action Type '''  - Link / Unlink<br/>
 +
  '''Field List'''  -  
 +
 +
'''Mandatory fields''' <br/>
 +
sf_Object ID -  is the object(UTA L2 id) the transaction would be attached to.<br/>
 +
translevel -  level in the UTA to link the transaction to.<br/>
 +
sf_ transaction id -  is the existing transaction record id.<br/>
 +
unlink -  indicates to link the transaction to a record.<br/>
 +
 +
--Begin custom parameter --<br/>
 +
  jsonrset : [{"sf_Object ID":"50268865","translevel":"2","sf_transaction id":"6165326","unlink":"1"}]<br/>
 +
--End custom parameter--<br/>
 +
 +
===UTA Consumer/Provider===
 +
<!--85831 - SmartConnect to support Consumer/Provider link  Applied to prod for May 2019 Upgrade-->
 +
* <span style="color: #ff0000;">Available after May 2019 upgrade.</span>
 +
Consumer/Provider Relationship should be [[Configuring_UTA_Provider/Receiver_(Consumer)_Relationships | configured]] before using this API function. UTA Provider/Consumer Relationships allows for the sharing of data between different [[UTA|UTAs]].
 +
 +
'''Notes'''<br />
 +
1. For May 2019 upgrade, add/update function will not support custom fields of the relationship.<br />
 +
2. Update function is only used to update role between consumer/provider. When roleid/rolename is updated, all custom fields of the relationship from the previous role will be deleted.<br />
 +
3. To update either the consumerid or the providerid of the consumer/provider record, these ids can't be updated. The record should be delete first and then add new consumer/provider record.
 +
3. List function supports standard fields and custom fields of the relationship.
 +
 +
 +
 +
====List Consumer/Provider Records====
 +
'''Function Name'''  -  3.11.1 List Consumer/Provider Records<br />
 +
'''Description'''  - Get a list of all Consumer/Provider records<br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  - List Provider / Consumer Link<br />
 +
'''Provider/Consumer Link '''  - Meeting Manager - L1 to Submission Manager - L1<br />
 +
'''Field List''' -
 +
 +
<u>'''Sample 1A'''</u><br/>
 +
'''Description'''  - Retrieve list of all consumer/provider records <br />
 +
--Begin custom parameter --<br />
 +
criteria:<br />
 +
sortby:<br />
 +
othersettings :<br />
 +
--End custom parameter--
 +
 +
[[File:ConsumerProviderList1.PNG|800px]]
 +
 +
====Create or Update or Delete Consumer/Provider Record====
 +
'''Function Name'''  -  3.11.2 Create or Update or Delete Consumer/Provide Records<br />
 +
'''Description'''  - Create, update or delete consumer/provider records<br />
 +
'''Object Type'''  -  Submission Manager - Grant<br />
 +
'''Action Type '''  - Update Provider/ Consumer Link<br />
 +
'''Provider/Consumer Link '''  - Meeting Manager - L1 to Submission Manager - L1<br />
 +
'''Field List''' -
 +
 +
'''Mandatory fields''' to add a new transaction record:<br/>
 +
providerid - [[Determining_the_applicationid|Application ID]] of the provider UTA<br/>
 +
consumerid - [[Determining_the_applicationid|Application ID]] of the consumer UTA <br/>
 +
roleid/rolename - Connection roleid/rolename between consumer/provider <br/>
 +
associationid - Unique identifier for the consumer/provider relationship table
 +
 +
 +
<u>'''Sample 2A'''</u><br/>
 +
'''Description'''  - Create a new consumer/provider record <br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"associationid": "0","roleid": "82840","consumerid":"10697883","providerid":"11191051"}]<br />
 +
--End custom parameter--
 +
 +
[[File:ConsumerProviderCreate1.PNG|800px]]
 +
 +
<u>'''Sample 2B'''</u><br/>
 +
'''Description'''  - Update an existing consumer/provider record <br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"associationid":"265692","isupdate":"1","rolename":"Cycle","consumerid":"8276105","providerid":"11190976"}]<br />
 +
--End custom parameter--
 +
 +
[[File:ConsumerProviderUpdate1.PNG|800px]]
 +
 +
<u>'''Sample 2C'''</u><br/>
 +
'''Description'''  - Delete an existing consumer/provider record <br />
 +
--Begin custom parameter --<br />
 +
jsonrset : [{"associationid":"265694","isdelete":"1","rolename": "Meeting","consumerid":"8276202","providerid":"11190976"}]<br />
 +
--End custom parameter--
 +
 +
[[File:ConsumerProviderDelete1.PNG|800px]]
 +
 
==See Also==
 
==See Also==
 
[[SmartConnect_-_RESTful_API|SmartConnect - RESTful API]] <br data-attributes="%20/">
 
[[SmartConnect_-_RESTful_API|SmartConnect - RESTful API]] <br data-attributes="%20/">
 
[[JSON API (SmartConnect) Standard Field Names]]
 
[[JSON API (SmartConnect) Standard Field Names]]
 +
 +
 
[[API Sample Code]]
 
[[API Sample Code]]
  
 
[[Category:Integration]][[Category:API]][[Category:SmartConnect RESTful API]]
 
[[Category:Integration]][[Category:API]][[Category:SmartConnect RESTful API]]

Latest revision as of 10:01, 23 June 2023

SmartConnect functions are specific to individual copies of SmartSimple so you can only use the functions that are have been previously established in that copy. The article describes how you add functions to an instance.

Contents

Creating a New Function

You need to have Global User Administrator permissions in order to add JSON functions.

  1. Log into the copy of SmartSimple where you wish to add the function.
  2. Navigate to Global Settings.
  3. Click on the Integrations tab.
  4. Click on the SmartConnect API link. Existing functions will be listed here for you to update.
  5. Click on the + button to create a new function.

Function Settings

Each function has the following settings:

  • Function Name – you will use this name to call the function from your own code.
  • Description – used to provide documentation as to the function’s purpose.
  • Record Type – a list of all SmartSimple objects within this instance. This will include: Report (reports you have created in the instance), Organization (company records), Users (system users and contacts), and each Universal Tracking Application™ Level 1, Level 2 and Level 3 type that you have created in the instance.
  • Action Type – this defines the action to be taken by the function. The following actions are available:  GET META, UPDATE META, GET, LIST, UPDATE, UPDATE ASSOCIATIONS, LIST ASSOCIATIONS, DOWNLOAD FILE, LIST FILES, SEARCH FILES, LIST NOTES and  VARIABLE REPLACE. Details on these Action Types / Methods are available below.
  • Field List – is used to define which fields are retrievable through the function call. Please limit field list to ~50 standard fields/custom fields.

Configurations and Responses

Visit the interactive demonstration page to test the sample functions.

Metadata

This function will retrieve the metadata of the selected Object Type.

Get Metadata of a Universal Tracking Application

Function Name  -  3.01.1 Get Metadata Sample 1: CMS360°: Application Metadata
Description  - To retrieve metadata of a.
Object Type  -  Case Management 360° - Case
Action Type   -  Get Meta
Field List  - levelone.*;;leveltwo.*;;levelthree.* 

No parameters are needed to retrieve metadata.
 

APIFunctionSample5l.PNG


Sending API request using cURL

cURL command below is an example on how to send API request to Get Metadata of a Universal Tracking Application using cURL.

curl -X GET -k -i 'https://api.smartsimple.com/API/1/levelone/
?url=https://api.smartsimple.com/API/1/levelone/
&companyid=825646
&alias=api
&username=smartconnectdemo@smartsimple.com
&password=********************
&apitoken=U2N4RwUBTn5XZldZXFdfWX1@C2JAWXVuAjIF'


Get Metadata of Organizations

Function Name  -  3.01.2 Get Metadata Sample 2: Organizations Metadata
Description  - To retrieve metadata from Organizations.
Object Type  -  Company
Action Type   -  Get Meta
Field List  - companies.* No parameters are needed to retrieve metadata.

APIFunctionGetOrgMeta.PNG

Get Metadata from Contacts

Function Name  -  3.01.3 Get Metadata Sample 3: Users Metadata
Description  - To retrieve metadata from Users.
Object Type  -  User
Action Type   -  Get Meta
Field List  - contacts.*
No parameters are needed to retrieve metadata.

APIFunctionGetUserMeta.PNG

Report

This function will retrieve the results of the query from an existing report by using the reportid.

Report Query

Function Name  -  3.02.1 Get Report Sample 1: Report Query
Description  - To retrieve data from a report.
Object Type  -  Report
Action Type   -  Query
Field List  -  Mandatory field:
reportid - is the Report ID of the report in the instance.
Optional field
criteriavalue - when the report has text criteria, values for the criteria(s) should be indicated in this field. If report contains multiple criteria, values should be delimited by double semi-colon eg. "VALUE_1;;VALUE_2".

A report query on the number of assessors grouped by specialty

Description  - A sample that will display the number of Assessors based on their specialty
--Begin custom parameter --
reportid : 36864
criteriavalue:
--End custom parameter--

APIFunctionReport1.PNG

A report query on a list of Specialty with more than 5 Assessors per specialty

Description  - Shows a list of Specialty with more than 5 Assessors per specialty
--Begin custom parameter --
reportid : 48281
criteriavalue: 5
--End custom parameter--

APIFunctionReport2.PNG

A report query on a list of Grants grouped by Organization

Description  - A sample that shows a list of applications filtered by "Approved Proposal" status grouped by organizations
--Begin custom parameter --
reportid : 36812
criteriavalue:
--End custom parameter--

APIFunctionReport3.PNG

A report query on a list of Grants grouped by Focus Area

Description  - A sample that displays a list of applications grouped by focus area
--Begin custom parameter --
reportid : 36814
criteriavalue:
--End custom parameter--

APIFunctionReport4.PNG

A report query on a list of Payments grouped by Grant Type

Description  - A sample that  displays the payment amount for each grant grouped by organization
--Begin custom parameter --
reportid : 36806
criteriavalue:
--End custom parameter--

APIFunctionReport5.PNG

Get

This function will retrieve all fields from the Field List of a single record based on the recordid of an Object Type.

Retrieve a Single Organization Record

Function Name  -  3.03.1 Get Method Sample 1: Retrieve a Single Organization Record
Description  - This function will retrieve a single record from the organization using the recordid: Company ID. The function is set up to retrieve the fields listed under Field List.

Object Type  -  Company
Action Type   -  Get
Field List  -  sf_Company ID;;sf_Name;;sf_Address;;sf_City;;sf_Country;;sf_Zip / Postal Code;;cf_EIN Number;;sf_Mission Statement

APIFunctionSample1.PNG

Retrieve a Single Contact Record

Function Name  -  3.03.2 Get Method Sample 2: Retrieve a Single Contact Record
Description  - This function will retrieve a single record from the user table using the User ID. The function is set up to retrieve the fields listed under Field List.
Object Type  -  User
Action Type   -  Get
Field List  -  sf_User ID;;sf_Last Name;;sf_First Name;;sf_Prefix;;sf_Suffix;;sf_Title;;sf_Phone;;sf_Email

APIFunctionSample2.PNG

Retrieve a Single Grant Application Record

Function Name  -  3.03.3 Get Method Sample 3: Retrieve a Single Grant Application Record
Description  - This function will retrieve a single record from the Universal Tracking Application Level 1 using the Opportunity ID.
Object Type  -  Submission Manager - Grant
Action Type   -  Get
Field List  -  cf_Project Name;;cf_Submission Number;;sf_Application Type;;sf_Status;;sf_Customer;;sf_Owner;;cf_Focus Area;;cf_Amount Requested;;cf_Program Area;;cf_Location;;cf_Proposed Start Date;;cf_Proposed End Date

APIFunctionSample3.PNG

Retrieve a Single Grant Application Payment Record

Function Name  -  3.03.4 Get Method Sample 4: Retrieve a Single Grant Application Payment Record
Description  - This function will retrieve a single record from the Universal Tracking Application Level 2 using the Event ID.
Object Type  -  Submission Manager - Activity
Action Type   -  Get
Field List  -  sf_Status;;sf_Activity Type;;cf_Payment ID;;cf_Payment Amount;;cf_Payment Date;;Payment Notes

APIFunctionSample4.PNG

Get System Variables

Retrieve a System Variable Record

Function Name  -  3.03.5 System Variables Sample 1: Get
Description  - Get information on the system variables by searching the System Variable ID
Object Type  -  System Variables
Action Type   -  Get
Field List  - sf_ID;;sf_Name;;sf_Value;; 

--Begin custom parameter --
recordid: 3601
--End custom parameter--


List

This function will retrieve a list of records from the selected Object Type. Custom parameters for List Functions are:

  • criteria - this is an optional json array. This contains the following nodes: "andor", "field", "operator" and "value"
Values of each nodes:
"andor" - either "and" or "or"
"field" - name of the standard/custom field to set the condition to
"operator" - can use the following: =,>,>=,<=,<,<>,!=,like,not like
"value" - value for the filter
sample1:
criteria: [{"andor":"and","field":"FIELDNAME","operator":"like","value":"PATTERN"}]
sortby: [{"field":"FIELDNAME","direction":"asc"}]
othersettings : {"getstorevalue":"1","keyformat":"0"}
sample2:
criteria: [{"andor":"and","field":"FIELDNAME1","operator":"=","value":"100"},{"andor":"or","field":"FIELDNAME2","operator":"like","value":"PATTERN"}]
sortby: [{"field":"FIELDNAME","direction":"desc"}]
othersettings : {"getstorevalue":"0","keyformat":"0"}
sample3:
An example query with brackets: ( (cf_somefield1 like '%whatever%' or cf_somefield2 like  '%whatever%'  or cf_somefield3 like  '%whatever%'  or cf_somefield4like  '%whatever%' ) and (cf_someotherfield1='whatever' or cf_someotherfield2='whatever else'))
criteria: [{ "andor": "(", "field": "cf_somefield1", "operator": "like", "value": "whatever" },{ "andor": "or", "field": "cf_somefield2", "operator": "like", "value": "whatever" },{ "andor": "or", "field": "cf_somefield3", "operator": "like", "value": "whatever" },{ "andor": "or", "field": "cf_somefield4", "operator": "like", "value": "whatever" },{ "andor": ") and (", "field": "cf_someotherfield1", "operator": "=", "value": "whatever" },{ "andor": "or", "field": "cf_someotherfield2", "operator": "=", "value": "whatever else" }]
sortby: 
othersettings : {"getstorevalue":"0","keyformat":"0"}
  • sortby - this is an optional json array. This contains the following nodes: "field" and "direction"
"field" - name of the standard/custom field to sort records by
"direction" - either "asc" (for ascending) or "desc" (for descending)
  • othersettings
    • getstorevalue - this is an optional settings for the json array. Options are: int type: 0 - to get display value, 1 to get stored value (value from the database eg. $25,000 vs 25000)
    • keyformat - this is an optional settings for the json array. Options are: 0 - to use what is configured in the Field List form the SmartConnect Function, 1 - to use the custom field names / standard field names and 2 - to use the custom field ID
Retrieve a list of contacts

Function Name  -  3.04.1 List Method Sample 1: Retrieve a list of Contacts
Description  - This function will retrieve a list of contacts based on criteria specified.
Object Type  -  User
Action Type   -  List
Field List  -  sf_User ID;;sf_First Name;;sf_Address;;sf_Address 2;;sf_City;;sf_Country;;sf_State / Province;;sf_Zip / Postal Code;;

Sample 1A
Description  - To retrieve a list of contacts where the first name begins with "J" and sorted by first name in ascending order
--Begin custom parameter --
criteria : [{"andor":"or","field":"sf_First Name","operator":"like","value":"J%"}]
sortby : [{"field":"sf_First Name","direction":"asc"}]
othersettings :
--End custom parameter--

APIFunctionSample5a.PNG

Sample 1B
Description  - To retrieve a list of contacts where the first name begins with "S" and the address contains "Peter" and sorted by first name in ascending order
--Begin custom parameter --
criteria : [{"andor":"or","field":"sf_First Name","operator":"like","value":"S%"},
{"andor":"and","field":"sf_Address","operator":"like","value":"%Peter%"}]
sortby : [{"field":"sf_First Name","direction":"asc"}]
othersettings :
--End custom parameter--

APIFunctionSample5b.PNG

Retrieve a list of organizations

Function Name  -  3.04.2 List Method Sample 2: Retrieve a list of Organizations
Description  - To retrieve a list of organizations.
Object Type  -  Company
Action Type   -  List
Field List  -  sf_Company ID;;sf_Name;;sf_Address;;sf_Address 2;;sf_City;;sf_Country;;sf_State / Province;;sf_Zip / Postal Code;;cf_Mission Statement

Sample 2A
Description  - To retrieve a list of organizations with organization name that starts with "Br"
--Begin custom parameter --
criteria : [{"andor":"and","field":"sf_Name","operator":"like","value":"Br%"}]
sortby : 
keyformat:
--End custom parameter--

APIFunctionSample5c.PNG

Sample 2B
Description  - To retrieve a list of organizations with organization name that starts with "Br" and address that contains "Ave" with the list in ascending order based on the organization name.
--Begin custom parameter --
criteria : [{"andor":"and","field":"sf_Name","operator":"like","value":"Br%"},{"andor":"and","field":"sf_Address","operator":"like","value":"%Ave%"}]
sortby : [{"field":"sf_Name","direction":"asc"}]
othersettings :
--End custom parameter--

APIFunctionSample5d.PNG

Retrieve a list of claims

Function Name  -  3.04.3 List Method Sample 3: CMS360° - Retrieve a list of claims
Description  - To retrieve a list of claims by professors sorted by organization name in descending order.
Object Type  -  Cast Management 360° - Case
Action Type   -  List
Field List  -  sf_Application Template Type;;sf_Customer;;cf_Claim;;cf_Nature of Injury / Comments on Claim;;sf_Activity List

--Begin custom parameter --
criteria : [{"andor":"and","field":"cf_Nature of Injury / Comments on Claim","operator":"like","value":"%professor%"}]
sortby : [{"field":"sf_Customer","direction":"desc"}]
othersettings :
--End custom parameter--

APIFunctionSample5e.PNG

List File

List files of an existing organization

Function Name  -  3.04.4.1 List Files Method Sample 1: from an existing organization
Description  - To retrieve the list of file(s) from the organization using the Company ID
Object Type  -  Company
Action Type   -  List Files
Field List  -  

Parameters used are:
objectid = Company ID
fieldid = Custom Field ID of an organization that is either single file type or multiple file type.

--Begin custom parameter --
objectid : 1688407
fieldid : 1523157
othersettings :
--End custom parameter--

APIFunctionSample5f.PNG

List files from an existing application

Function Name  -  3.04.4.2 List Files Method Sample 2: from an existing application
Description  - To retrieve the list of file(s) of an existing application using the Opportunity ID
Object Type  -  Submission Manager - Grant
Action Type   -  List Files
Field List  -  

Parameters used are:
objectid = Opportunity ID
fieldid = Custom Field ID of UTA L1 that is either single file type or multiple file type.

--Begin custom parameter --
objectid : 1688407
fieldid : 1523157
getstorevalue :
--End custom parameter--

APIFunctionSample5g.PNG

List Notes

List notes from an existing application

Function Name  -  3.04.5.1 List Notes Method Sample 1: from an existing application
Description  - To retrieve all note(s) associated with an existing application using the Opportunity ID
Object Type  -  Submission Manager - Grant
Action Type   -  List notes
Field List  - sf_Type Name;;sf_Content;;sf_Created By;;sf_Created By ID;;sf_Created Date;;sf_Note ID;;sf_Object ID;;sf_Type ID;;sf_Note Content

Parameters used are:
objectid = Opportunity ID
--Begin custom parameter --
objectid : 8276124
--End custom parameter--

APIFunctionSample5h.PNG

List Multiple Addresses

List all Multiple Addresses of an existing Organization

Function Name  -  3.04.6.1 List Multiple Addresses Method Sample 1: Multiple Addresses of an existing Organization
Description  - To retrieve all of the multiple addresses of an existing organization using the Company ID
Object Type  -  Company
Action Type   -  List Multiple Addresses
Field List  - sf_Address;;sf_Address 2;;sf_City;;sf_State / Province;;sf_Country;;sf_Zip / Postal Code;;sf_Primary Address;;sf_Type;;sf_Type ID;;sf_Updated By;;sf_Last Modified;;sf_Object ID;;sf_Address ID
 

Parameters used are:
objectid = Company ID
--Begin custom parameter --
objectid : 1688407
--End custom parameter--

APIFunctionSample5i.PNG

List Associations

List Contact associations from an existing application

Function Name  -  3.04.7.1 List Associations Method Sample 1: Contact associations from an existing application
Description  - To retrieve the list of contacts associated with an existing application using the Opportunity ID
Object Type  -  Submission Manager - Grant
Action Type   -  List Associations
Field List  - contacts.*
 

Parameters used are:
objectid = Opportunity ID
type = either '"contacts"' or '"organizations"'


--Begin custom parameter --
objectid: 10697883
type: contacts
--End custom parameter--

Note: Please always use objectid (as per May 2019 update). recordid still works.

APIFunctionSample5j.PNG

List Organization associations from an application

Function Name  -  3.04.7.2 List Associations Method Sample 2: Organization associations from an existing application
Description  - To retrieve the list of organizations associated with an existing application using the Opportunity ID
Object Type  -  Submission Manager - Grant
Action Type   -  List Associations
Field List  - organizations.*
 

Parameters used are:
objectid = Opportunity ID
type = either '"contacts"' or '"organizations"'
--Begin custom parameter --
objectid: 10697883
type: organizations
--End custom parameter--

Note: 1. As per May 2019 upgrade, use objectid but recordid still works. 2. In Field List, either use organizations or companies. If organizations is used in the Field List, type in the parameter should be organizations.

APIFunctionSample5k.PNG

List System Variables

List All System Variables

Function Name  -  3.04.8.1 System Variables Sample 1: List
Description  - Retrieves all the system variables
Object Type  -  System Variables
Action Type   -  List
Field List  - sf_ID;;sf_Name;;sf_Value;; 

No parameters are needed to retrieve all the global system variables.
 

APIFunctionSystemVariables1.PNG

Update

This function will create new records or update existing records based on the selected Object Type.

Update

Create/Update organization record

Function Name  -  3.05.1.1 Create/update organization record
Description  - Create new records or update existing organization records
Object Type  -  Company
Action Type   -  Update
Field List  - sf_Name;;sf_Is External;;sf_Parent Company ID;;sf_Address;;sf_Address 2;;sf_City;;sf_State / Province;;sf_Zip / Postal Code;;sf_Country;;cf_EIN Number;;cf_1523156;;sf_Category ID List

Sample 1A
Description  - Create new organization record
Mandatory fields to add a new record:
recordid -  to create new record, recordid should be '0'
sf_Parent Company ID -  is the company holder or the parent company for the organization to be added.
sf_Is External -  either "1" for external and "0" for internal organization sf_Category ID List - Category of the company to be added.

--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Parent Company ID":"826082","sf_Is External":"1","sf_Name":"Test 1 Company","sf_Country":"10","sf_Address":"111 Peter Street","sf_City":"Toronto","sf_State / Province":"ON","cf_EIN Number":"101010101","sf_Category ID List":",3884,"}]
--End custom parameter--

APIFunctionSample6a.PNG

Sample 1B
Description  - Update existing organization record
Mandatory fields to update existing record:
recordid - is the Company ID an of existing organization to update.


--Begin custom parameter --
jsonrset : [{"recordid":"1688403","sf_Name":"Change Company thru API"}]
--End custom parameter--

APIFunctionSample6b.PNG

Create/Update User record

Function Name  -  3.05.1.2 Create/update user record
Description  - Create new records or update existing user
Object Type  -  User
Action Type   -  Update
Field List  - sf_User ID;;sf_Last Name;;sf_First Name;;sf_Prefix;;sf_Suffix;;sf_Title;;sf_Phone;;sf_Email;;sf_Company ID;;sf_Title;;sf_Is External;;sf_Role ID List

Sample 1C
Description  - To create two new user record
Mandatory fields to add new records:
recordid -  to create new record, recordid should be '0'
sf_Parent Company ID -  is the company holder or the parent company for the organization to be added.
sf_Is External -  either "1" for external and "0" for internal organization
sf_Role ID List - of a user

--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Company ID":"1688403","sf_Is External":"1","sf_First Name":"John","sf_Last Name":"Doe","sf_Role ID List":",14078,"},{"recordid":"0","sf_Company ID":"1688403","sf_Is External":"1","sf_First Name":"Mary","sf_Last Name":"Doe","sf_Role ID List":",14078,"}]
--End custom parameter--

APIFunctionSample6d.PNG

Sample 1D
Description  - To update last name of existing user records


Mandatory fields to update records:
recordid - is the User ID of existing user.

--Begin custom parameter --
jsonrset : [{"recordid":"87983424","sf_Last Name":"Change Last Name thru API"},{"recordid":"88159403","sf_Last Name":"Smith"}]
--End custom parameter--

APIFunctionSample6c.PNG

Create/Update UTA L1 record

Function Name  -  3.05.1.3 Create/update UTA L1 record
Description  - Create new records or update UTA L1 records
Object Type  -  Submission Manager - Grant
Action Type   -  Update
Field List  - sf_Name;;sf_Type ID;;sf_Status ID;;sf_Company ID;;sf_Person ID;;sf_Owner ID;;sf_Start Date;;sf_End Date;;cf_1523228

Sample 1E
Description - to add a new UTA L1 record


Mandatory fields to add new records:
recordid - to create new record, recordid should be '0'
sf_Type ID - assigned Type ID of the new UTA L1 record.
sf_Status ID - assigned Status ID of the new UTA L1 record.
--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Type ID":"20654","sf_Status ID":"25178","sf_Name":"Test 1 Application","sf_Customer":"1767970","sf_Person":"88159402","sf_Owner":"3108429","sf_Start Date":"2018-01-01","sf_End Date":"2018-12-31"}]
--End custom parameter--

APIFunctionUpdateUtaL1b.PNG

Sample 1F
Description - To update value of a custom field of an existing UTA L1 record.


Mandatory fields to update existing records:
recordid - is the Opportunity ID of existing record.
--Begin custom parameter --
jsonrset : [{"recordid":"8276165","cf_1523228":"Change value of this custom field thru API function"}]
--End custom parameter--

APIFunctionUpdateUtaL1a.PNG

Create/Update UTA L2 record

Function Name  -  3.05.1.4 Create/update UTA L2 record
Description  - Create new records or update UTA L2 records
Object Type  -  Submission Manager - Activity
Action Type   -  Update
Field List  - sf_Subject;;sf_Type ID;;sf_Status ID;;sf_Owner ID;;sf_Start Date;;sf_End Date;;sf_Parent ID;;cf_Payment Notes

Sample 1G
Description - to add a new UTA L2 record


Mandatory fields to add new records:
recordid - to create new record, recordid should be '0'
sf_Parent ID - parent of the UTA L2 record. use "objectid" in place of sf_Parent ID to update
sf_Type ID - assigned Type ID of the new UTA L2 record.
sf_Status ID - assigned Status ID of the new UTA L2 record.
--Begin custom parameter --
jsonrset : [{"recordid":"0","objectid":"10697883","sf_Type ID":"49096","sf_Status ID":"49093","sf_Start Date":"2018-10-01","sf_End Date":"2018-11-01","cf_Payment Notes":"new record added as an example"}]
--End custom parameter--

APIFunctionUpdateUtaL2a.PNG

Sample 1H
Description - to update existing UTA L2 record


Mandatory fields to update a custom field "Payment Notes" of an existing records:
recordid - is the Event ID of existing record.
--Begin custom parameter --
jsonrset : [{"recordid":"10020959 ","cf_Payment Notes":"Change value of this custom field thru API function"}]
--End custom parameter--

APIFunctionUpdateUtaL2b.PNG

Update Multiple Addresses

Update/create multiple address record of an Organization

Function Name  -  3.05.2.1 Update Multiple Addresses Method Sample 1: update addresses of an existing Organization
Description  - Create new records or update existing multiple addresses of an existing organization
Object Type  -  Company
Action Type   -  Update Multiple Addresses
Field List  - sf_Address;;sf_Address 2;;sf_City;;sf_State / Province;;sf_Country;;sf_Zip / Postal Code;;sf_Primary Address;;sf_Type;;sf_Type ID;;sf_Updated By;;sf_Last Modified;;sf_Object ID

Sample 2A
Description  - To create new multiple address for an existing company


Mandatory fields to add new records:
recordid -  to create new record, recordid should be '0'
sf_Object ID -  is the Company ID where the address will be attached to.
sf_Type ID -  multiple address type

--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Object ID":"1688407","sf_Type ID":"74117","sf_Address":"2018 Yonge Street","sf_Country":"10","sf_Address 2":"Suite 401111","sf_City":"Toronto","sf_State / Province":"ON"}]
--End custom parameter--

APIFunctionSample6e.PNG

Sample 2B
Description  - To update address of existing multiple address record


Mandatory fields to update records:
recordid - is the unique identifier from the Association table.

--Begin custom parameter --
jsonrset : [{"recordid":"632573","sf_Address":"New Street Address","sf_City":"New City"}]
--End custom parameter--

APIFunctionSample6f.PNG

Update Associations

Update function for association can add new association records or update the role of an existing association record.
A. When this function is used to add new record, the following parameters are mandatory: objectid, companyid or contactid, rolename or roleid.
B. When this function is used to update existing association records, it can only update the role of existing association records. Mandatory parameters are objectid, companyid or contactid, rolename or roleid and associationid. When the existing record is updated to a new role, all custom fields of the association from the previous role will be deleted.
If you need to change company/contact, the record will need to be deleted and then add a new record for a new association.

Create/Update contact associations of a Level 1

Function Name  -  3.05.3.1 Update Associations Method Sample 1: update contact associations of an existing Level 1
Description  - Create new records or update existing contact associated with an existing Level 1 record
Object Type  -  Submission Manager - Grant
Action Type   -  Update Associations
Field List  - contacts.*

Sample 3A
Description  - To create new user associated with an existing Submission Manager Level 1


Mandatory fields to add new records:
objectid -  is the Opportunity ID where the user will be associated to.
contactid - User ID
rolename / roleid -  association role of the user
isupdate -  "1" for yes to update and "0" for to add new record


Parameter Sample#1
--Begin custom parameter --
jsonrset : [{"recordid":"10697883","contacts":[{"contactid":"3108577","rolename":"Meeting Participant","isupdate":"0"}]}]
--End custom parameter--

Parameter Sample#2 - Starting May 2019 Upgrade
--Begin custom parameter --
jsonrset : [{"recordid":"10697883","contacts":[{"contactid":"3108577","rolename":"Signee Internal"}]}]
--End custom parameter--

Parameter Sample#3 - adding multiple contacts sample
--Begin custom parameter --
jsonrset : [{"recordid":"10697883","contacts":[{"contactid":"3108226","rolename":"Signee Internal"},{"contactid":"3108119","rolename":"Meeting Participant"}]}]
--End custom parameter--

APIFunctionSample6g.PNG


Sample 3B
Description  - To update association information of an existing Submission Manager Level 1 record


Mandatory fields to update records:
objectid - is the Opportunity ID where the user will be associated to.
isupdate -  "1" for yes and "0" for no contactid - User ID associationid - is the system's unique numerical value associated with each Association record rolename / roleid -Role ID

--Begin custom parameter --
jsonrset : [{"recordid":"10697883","contacts":[{"isupdate":"1","contactid":"88435720","associationid":"2829620","rolename":"Signee Internal", "cf_My customfield": "updated value"}]}]
--End custom parameter--

APIFunctionSample6h.PNG

Update System Variables

Update a System Variable

Function Name  -  3.05.4.1 System Variables Sample 1: Update
Description  - Updates the value or the name of an existing system variables
Object Type  -  System Variables
Action Type   - Update
Field List  - sf_ID;;sf_Name;;sf_Value;; 

--Begin custom parameter --
jsonrset : [{"recordid":"9313","sf_Value":"2"}]
--End custom parameter--

APIFunctionSystemVariables3.PNG


Upload/Download File

This function will download the file.

Download File(s) from a company profile

Function Name  -  3.06.1 Download File Method Sample 1: Download file(s) from an existing company record
Description  - Download the file based on the criteria indicated.
Object Type  -  Company
Action Type   -  Download File
Field List  - Mandatory fields to download a file:
filename - name of the file to be downloaded.
objectid - is the Company ID where the file is attached to.
fieldid - Custom Field ID of the Organization record that is either a single file type or multiple file type. --Begin custom parameter --
filename: Test.txt
objectid: 1688407
fieldid: 1523157
--End custom parameter--
Note: In the API website, the content of the file will be shown in the Response section as seen below.
APIFunctionDownloadFile1.PNG

Upload File(s) to a field in the company profile

Function Name  -  3.06.2 Upload File Method Sample 1: Upload file(s) to an existing company record
Description  - Upload the file based on the criteria indicated.
Object Type  -  Company
Action Type   -  Upload Files
Field List  -  cf_123456  Mandatory fields to upload a file: objectid - is the [wiki/Determining_the_companyid Company ID] where the file is attached to.
fieldid - [wiki/Custom_Field_ID Custom Field ID] of the Organization record that is either a [wiki/Custom_Field_Type:_Upload_-_Single_File_Storage single file type] or [wiki/Custom_Field_Type:_Upload_-_Multiple_Files_Storage multiple file type]. --Begin custom parameter --
objectid: 1688407
fieldid: 1523157
--End custom parameter--
Note: To test use Postman. The API URL for upload file will be: https://alias.smartsimple.com/API/1/company/?alias=xxxxx&companyid=xxxxxx&username=xxxxx&password=xxxxx&apitoken=xxxxx&objectid=xxxxx&fieldid=xxxxx
with the file included in the form data, use POST method.

Search File

This function will retrieve a list of files by searching for a keyword.

Search Files Method Sample 1: Search Case Documents

Function Name  -  3.07.1 Search Files Method Sample 1: Search Case Documents
Description  - Search the multiple file field for keyword
Object Type  -  Case Management 360° - Case
Action Type   -  Search Files
Field List  - cf_Case Documents;;sf_Application Template Type;;sf_Customer

--Begin custom parameter --
keywords: HIPAA
--End custom parameter--

APIFunctionSample8.PNG

Variables Replace

This function will pass the parameters: 1. objectid and 2. content (block of text) which will be run thru the variable processor and return the results as JSON.

Variables Replace - Company

Function Name  -  3.09.1 System Variables Replace - Company
Description  - This function will send the objectid=Company ID and the desired content with system variables. It returns a json format of the content with all the system variables replaced by the variable processor.
Object Type  -  Company
Action Type   - Variables Replace
Field List  -

--Begin custom parameter --
objectid: 825646
content: Company name is @name@, located at @address@, @city@, @country@. Primary Contact is @primarycontact@.
--End custom parameter--


APIFunctionVariablesReplace1.PNG

Variables Replace - User

Function Name  -  3.09.2 System Variables Replace - User
Description  - This function will send the objectid=User ID and the desired content with system variables. It returns a json format of the content with all the system variables replaced by the variable processor.
Object Type  -  User
Action Type   - Variables Replace
Field List  -  

--Begin custom parameter --
objectid: 88159402
content: Hello @firstname@ (@userid@), from company @company@, located in @company.address@.
--End custom parameter--

APIFunctionVariablesReplace2.PNG

Variables Replace - UTA L1

Function Name  -  3.09.3 System Variables Replace - UTA L1
Description  - This function will send the objectid=Opportunity ID and the desired content with system variables. It returns a json format of the content with all the system variables replaced by the variable processor.
Object Type  -  Submission Manager - Grant
Action Type   - Variables Replace
Field List  -  

--Begin custom parameter --
objectid: 8276165
content: This application is called "@name@", under the status of "@status@". The owner on this record is "@owner.fullname@", belonging to "@owner.company.name@". The company is "@client.name@". Parent Company is "@company.parent.name@.
--End custom parameter--

APIFunctionVariablesReplace3.PNG

Variables Replace - UTA L2

Function Name  -  3.09.4 System Variables Replace - UTA L2
Description  - This function will send the objectid=Event ID and the desired content with system variables. It returns a json format of the content with all the system variables replaced by the variable processor.
Object Type  -  Submission Manager - Grant
Action Type   - Variables Replace
Field List  -  

--Begin custom parameter --
objectid: 18431901
content: This is a level two id record with eventid of"@eventid@" with L2 Type of "@type@" and status of "@status@". The parent record id is "@parent.opportunityid@". The parent Company's address is "@parent.company.address@".
--End custom parameter--

APIFunctionVariablesReplace4.PNG

Variables Replace - UTA L3

Function Name  -  3.09.5 System Variables Replace - UTA L3
Description  - This function will send the objectid=Event ID and the desired content with system variables. It returns a json format of the content with all the system variables replaced by the variable processor.
Object Type  -  Submission Manager - Disbursement
Action Type   - Variables Replace
Field List  -  

--Begin custom parameter --
objectid: 18432872
content: This is L3 record id "@eventid@", of status "@status@". The parent L2 Type is "@parent.type@". The L1 company is "@parent.parent.company.name@".
--End custom parameter--

APIFunctionVariablesReplace5.PNG

Delete

Delete a Single Organization Record

Function Name  -  3.09.1 Delete Organization Record
Description  - Delete existing organization record
Object Type  -  Company
Action Type   - Delete
Field List  -   --Begin custom parameter --
jsonrset : [{"recordid":"1924628"}]
--End custom parameter--

Delete org.PNG

Delete a Single Contact Record

Function Name  -  3.09.2 Delete Contact Record
Description  - Delete existing user record
Object Type  -  User
Action Type   - Delete
Field List  -  

--Begin custom parameter --
jsonrset : [{"recordid":"88173129"}]
--End custom parameter--

Delete user.PNG

Delete Organization Records (Batch delete)

Function Name  -  3.09.1 Delete Organization Records
Description  - Delete existing organization records
Object Type  -  Company
Action Type   - Delete
Field List  -   --Begin custom parameter --
jsonrset : [{"recordid":"1924629"},{"recordid":"1924630"},{"recordid":"1924631"}]
--End custom parameter--
Result:
{"records":[{"recordid":"1924629","status":"Object Deleted"},
{"recordid":"1924630","status":"Object Deleted"},
{"recordid":"1924631","status":"Object Deleted"}],"message":{}}

Delete a Single Contact Record

Function Name  -  3.09.2 Delete Contact Record
Description  - Delete existing user record
Object Type  -  User
Action Type   - Delete
Field List  -  

--Begin custom parameter --
jsonrset : [{"recordid":"88173129"}]
--End custom parameter--

Delete a Single Grant Application Record

Function Name  -  3.09.3 Delete UTA Level 1 Record
Description  - Delete existing UTA Level 1 record
Object Type  -  Submission Manager - Grant
Action Type   - Delete
Field List  -  

--Begin custom parameter --
jsonrset : [{"recordid":"8276165"}]
--End custom parameter--

Delete uta1.PNG

Delete a Single Grant Application Payment Record

Function Name  -  3.09.4 Delete UTA Level 2 Record
Description  - Delete existing UTA Level 2 record
Object Type  -  Submission Manager - Activity
Action Type   - Delete
Field List  -  

--Begin custom parameter --
jsonrset : [{"recordid":"10021111"}]
--End custom parameter--

Delete uta2.PNG

Delete Association Record

Function Name  -  3.09.5 Delete Association Records
Description  - Delete existing contact associated with an existing Level 1 record
Object Type  -  Submission Manager - Grant
Action Type   -  Update Associations
Field List  - contacts.*

Sample
Description  - To delete existing user associated with an existing Submission Manager Level 1
Mandatory fields
objectid -  is the Universal Tracking Application Level 1 where the user will be associated with.
isdelete -  "1" for yes to delete
rolename / roleid -  association role of the user contactid - User ID associationid - is the system's unique numerical value associated with each Association record

--Begin custom parameter --
jsonrset : {"objectid": "10697883", "contacts" : [{"isdelete": "1", "contactid": "3108991", "rolename": "Meeting Participant","associationid":"2829623"}]}
--End custom parameter--

APIFunctionDeleteL1User.PNG

Delete Multiple Upload Files

After the July 2023 upgrade, new function to delete files from Upload - Multiple Files Storage fields was added. Function Name  -  3.09.6 Delete Files in Level One
Description  - Delete existing files from a multiple file field in Level 1 record
Object Type  -  Submission Manager - Grant
Action Type   -  Files - Delete
Field List  - cf_multiplefilefield


Sample
Description  - To delete existing files from a multiple file field in Submission Manager Level 1
Mandatory fields
objectid -  is the Universal Tracking Application Level 1 id (opportunityid) where the file to be deleted is located.
fieldid -  the field id of the multiple file field
filename -  the filename of the file to be deleted

--Begin custom parameter --
jsonrset : [{"objectid":"1223454","fieldid":"3163245","filename":"147807_dup.png"},{"objectid":"1223454","fieldid":"2697568","filename":"128895.png"}]
--End custom parameter--

Transaction

  • Available after May 2019 upgrade.
  • Transaction should be configured before using this API function. Transactions can be attached to an object (Organization or User or UTA L1/L2).

Get Transaction Record

Get a Transaction Record from an Organization

Function Name  -  3.10.1.1 Get a Transaction Record from an Organization
Description  - Retrieve an organization transaction record
Object Type  -  Company Transactions
Action Type   - Get
Field List - sf_Transaction ID;;sf_Object ID;;sf_Description;;sf_Subject;;sf_Type;;sf_Status;;sf_Created Date;;sf_Modified Date;;sf_Created By;;sf_Updated By

Mandatory fields to get a transaction record:
recordid -  the unique identifier from the transaction table.

--Begin custom parameter --
recordid:2738520
othersettings :
--End custom parameter--

TransactionGet1.PNG

Retrieve a Transaction Record from a Submission Manager L1

Function Name  -  3.10.1.2 Get Method Sample 4: Retrieve a Transaction Record from a Submission Manager L1
Description  - Retrieve a transaction record
Object Type  -  Submission Manager - Transactions
Action Type   - Get
Field List - sf_End Date;;sf_Description;;sf_Subject;;sf_Start Date;;sf_Status;;sf_Modified Date;;sf_Updated By;;sf_Created Date;;sf_Created By;;sf_Type;;sf_Transaction ID;;sf_Object ID

Mandatory fields to get a transaction record:
recordid -  the unique identifier from the transaction table.

--Begin custom parameter --
recordid:2738527
othersettings :
--End custom parameter--

TransactionGet2.PNG

List Transaction Record

Function Name  -  3.10.2 List Transaction Records
Description  - Get a list of all transaction records
Object Type  -  Submission Manager - Transactions
Action Type   - List
Field List  -  sf_End Date;;sf_Description;;sf_Subject;;sf_Start Date;;sf_Status;;sf_Modified Date;;sf_Updated By;;sf_Created Date;;sf_Created By;;sf_Type;;sf_Transaction ID;;sf_Object ID

Sample 2A
Description  - Retrieve list of all transaction records
--Begin custom parameter --
criteria:
sortby:
othersettings :
--End custom parameter--

TransactionList.PNG

Sample 2B
Description  - Retrieve a list of transaction records filtered with Transaction Type
--Begin custom parameter --
criteria : [{"andor":"and","field":"sf_Type","operator":"=","value":"Transaction_in_Org"}]
sortby:
othersettings :
--End custom parameter--

TransactionList2.PNG

Update Transaction Record

Create or Update Transaction Record in Organization Profile

Function Name  -  3.10.3.1 Create or Update Transaction Record in Organization Profile
Description  - Create new transaction record attached to a Organization record
Object Type  -  Company Transactions
Action Type   - Update
Field List  -  sf_Transaction ID;;sf_Object ID;;sf_Description;;sf_Subject;;sf_Type;;sf_Status;;sf_Created Date;;sf_Modified Date;;sf_Created By;;sf_Updated By

Mandatory fields to add a new transaction record:
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'
sf_Object ID -  is the object(Organization, User, UTA L1/L2) the transaction would be attached to.
sf_Type -  Transaction Type of the transaction record.
sf_Status - Transaction Status of the transaction record.

Sample 3A
Description  - Create new transaction record
--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Object ID":"10697883","sf_Type":"2184","sf_Status":"82626","sf_Subject":"Test Transaction Record"}]
--End custom parameter--

TransactionUpdate2.PNG

Sample 3B
Description  - Update existing transaction record
--Begin custom parameter --
jsonrset : [{"recordid":"2738520","sf_Subject":"Changed subject thru api"}]
--End custom parameter--

TransactionUpdate1.PNG

Create or Update Transaction Record in Submission Manager L1

Sample A - creating new transaction record from API v1
Function Name  -  3.10.3.2 Create or Update Transaction Record in Submission Manager L1
Description  - Create new transaction record attached to a Submission Manager L1 record
Object Type  -  Submission Manager - Transactions
Action Type   - Update
Field List  -  sf_Object ID;;sf_Subject;;sf_Status;;sf_Type

Mandatory fields to add a new transaction record:
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'
sf_Object ID -  is the object(Organization, User, UTA L1/L2) the transaction would be attached to.
sf_Type -  Transaction Type of the transaction record.
sf_Status - Transaction Status of the transaction record.

--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Object ID":"10697883","sf_Type":"2184","sf_Status":"82626","sf_Subject":"Test Transaction Record"}]
--End custom parameter--

TransactionUpdate.PNG

Sample B - creating new transaction record in Submission Mgr L1 from API v2

Function Name  -  3.10.3.2  Create or Update Transaction Record in Submission Manager L1 (API v2)
Description  - Create new transaction record attached to a Submission Manager L1 record
Object Type  -  Submission Manager - Transactions
Action Type   - Update
Field List  -  sf_Object ID;;sf_Subject;;sf_Status;;sf_Type;;cf_Remarks;;

Note that translevel is new in version 2 where translevel=1 for UTA L1 and translevel=2 for UTA L2.

Mandatory fields to add a new transaction record:
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'
sf_Object ID -  is the object(UTA L1) the transaction would be attached to.
sf_Type -  Transaction Type of the transaction record.
sf_Status - Transaction Status of the transaction record.
translevel -  is the UTA Level (UTA L1/L2) the transaction would be attached to. (NEW that is implemented in API v2)


--Begin custom parameter --
jsonrset : [{"recordid":"0","sf_Object ID":"10697883","sf_Type":"2119","sf_Status":"82626","translevel":"1","sf_Subject":"Test Transaction Record"}]
--End custom parameter--

New Endpoint/API/2/transactions/

Transactions 01.png


Sample C - creating new transaction record in Submission Mgr L2 from API v2

 Function Name  -  3.10.3.2 Create or Update Transaction Record in Submission Manager L2 (API v2)
 Description  - Create new transaction record attached to a Submission Manager L2 record
 Object Type  -  Submission Manager - Transactions
 Action Type   - Update
 Field List  -  sf_Object ID;;sf_Subject;;sf_Status;;sf_Type;;cf_Remarks;;

Note that translevel is new in version 2 where translevel=1 for UTA L1 and translevel=2 for UTA L2.

Mandatory fields to add a new transaction record:
recordid -  the unique identifier from the transaction table. To create new record, recordid should be '0'
sf_Object ID -  is the object(UTA L2) the transaction would be attached to.
sf_Type -  Transaction Type of the transaction record.
sf_Status - Transaction Status of the transaction record.
translevel -  is the UTA Level (UTA L1/L2) the transaction would be attached to. (NEW that is implemented in API v2)

--Begin custom parameter --
 jsonrset : [{"recordid":"0","sf_Object ID":"10697974","sf_Type":"2184","sf_Status":"82626","sf_Subject":"Test Transaction Record","translevel":"2"}]
 --End custom parameter--

New Endpoint/API/2/transactions/

Transactions 02.png

Delete Transaction Record

Function Name  -  3.10.4 Delete Transaction Record
Description  - Delete a transaction record
Object Type  -  Company Transactions
Action Type   - Delete
Field List  -  

--Begin custom parameter --
jsonrset : [{"recordid":"2738523"}]
--End custom parameter--

TransactionDelete1.PNG


Link/Unlink Transaction Record from other objects

This new feature to link/unlink transactions is only available in APIv2 and only for L1 & L2 transactions.


Sample A - Link existing transactions to an existing L1
Function Name  -   Link transaction record to an existing Submission Manager L1
 Description  - Link existing company transaction record to an existing Submission Manager L1 record
 Object Type  -  Submission Manager - Transactions
 Action Type   - Link / Unlink
 Field List  -  cf_5469887

Mandatory fields  sf_Object ID -  is the object(UTA L1 id) the transaction would be attached to.
translevel -  level in the UTA to link the transaction to.
sf_ transaction id -  is the existing transaction record id.
islink -  indicates to link the transaction to a record.
cf_5469887 -  transaction custom field.

--Begin custom parameter --
 jsonrset : [{"recordid":"0","sf_Object ID":"1123456","translevel":"1","cf_5469887":"Test linking Transaction to SML1","sf_transaction id":"6165326","islink":"1"}]
 --End custom parameter--

Sample B - Unlink existing transactions to an existing L1
 Function Name  -   Unlink transaction record to an existing Submission Manager L1
  Description  - Unlink existing company transaction record from the Submission Manager L1 record
  Object Type  -  Submission Manager - Transactions
  Action Type   - Link / Unlink
  Field List  -  

Mandatory fields
sf_Object ID -  is the object(UTA L1 id) the transaction would be attached to.
translevel -  level in the UTA to link the transaction to.
sf_ transaction id -  is the existing transaction record id.
unlink -  indicates to link the transaction to a record.

--Begin custom parameter --
  jsonrset : [{"sf_Object ID":"1123456","translevel":"1","sf_transaction id":"6165326","unlink":"1"}]
--End custom parameter--

Sample C - Link existing transactions to an existing L2
 Function Name  -   Link transaction record to an existing Submission Manager L2
  Description  - Link existing company transaction record to an existing Submission Manager L2 record
  Object Type  -  Submission Manager - Transactions
  Action Type   - Link / Unlink
  Field List  -  cf_5469887

Mandatory fields 
sf_Object ID -  is the object(UTA L2 id) the transaction would be attached to.
translevel -  level in the UTA to link the transaction to.
sf_ transaction id -  is the existing transaction record id.
islink -  indicates to link the transaction to a record.
cf_5469887 -  transaction custom field.

--Begin custom parameter --
  jsonrset : [{"recordid":"0","sf_Object ID":"50268865","translevel":"2","cf_5469887":"Test linking Transaction to SML2","sf_transaction id":"6165326","islink":"1"}]
--End custom parameter--

Sample D - Unlink existing transactions to an existing L2
 Function Name  -   Unlink transaction record to an existing Submission Manager L2
  Description  - Unlink existing company transaction record from the Submission Manager L2 record
  Object Type  -  Submission Manager - Transactions
  Action Type   - Link / Unlink
  Field List  -  

Mandatory fields 
sf_Object ID -  is the object(UTA L2 id) the transaction would be attached to.
translevel -  level in the UTA to link the transaction to.
sf_ transaction id -  is the existing transaction record id.
unlink -  indicates to link the transaction to a record.

--Begin custom parameter --
  jsonrset : [{"sf_Object ID":"50268865","translevel":"2","sf_transaction id":"6165326","unlink":"1"}]
--End custom parameter--

UTA Consumer/Provider

  • Available after May 2019 upgrade.

Consumer/Provider Relationship should be configured before using this API function. UTA Provider/Consumer Relationships allows for the sharing of data between different UTAs.

Notes
1. For May 2019 upgrade, add/update function will not support custom fields of the relationship.
2. Update function is only used to update role between consumer/provider. When roleid/rolename is updated, all custom fields of the relationship from the previous role will be deleted.
3. To update either the consumerid or the providerid of the consumer/provider record, these ids can't be updated. The record should be delete first and then add new consumer/provider record. 3. List function supports standard fields and custom fields of the relationship.


List Consumer/Provider Records

Function Name  -  3.11.1 List Consumer/Provider Records
Description  - Get a list of all Consumer/Provider records
Object Type  -  Submission Manager - Grant
Action Type   - List Provider / Consumer Link
Provider/Consumer Link   - Meeting Manager - L1 to Submission Manager - L1
Field List -

Sample 1A
Description  - Retrieve list of all consumer/provider records
--Begin custom parameter --
criteria:
sortby:
othersettings :
--End custom parameter--

ConsumerProviderList1.PNG

Create or Update or Delete Consumer/Provider Record

Function Name  -  3.11.2 Create or Update or Delete Consumer/Provide Records
Description  - Create, update or delete consumer/provider records
Object Type  -  Submission Manager - Grant
Action Type   - Update Provider/ Consumer Link
Provider/Consumer Link   - Meeting Manager - L1 to Submission Manager - L1
Field List -

Mandatory fields to add a new transaction record:
providerid - Application ID of the provider UTA
consumerid - Application ID of the consumer UTA 
roleid/rolename - Connection roleid/rolename between consumer/provider 
associationid - Unique identifier for the consumer/provider relationship table


Sample 2A
Description  - Create a new consumer/provider record
--Begin custom parameter --
jsonrset : [{"associationid": "0","roleid": "82840","consumerid":"10697883","providerid":"11191051"}]
--End custom parameter--

ConsumerProviderCreate1.PNG

Sample 2B
Description  - Update an existing consumer/provider record
--Begin custom parameter --
jsonrset : [{"associationid":"265692","isupdate":"1","rolename":"Cycle","consumerid":"8276105","providerid":"11190976"}]
--End custom parameter--

ConsumerProviderUpdate1.PNG

Sample 2C
Description  - Delete an existing consumer/provider record
--Begin custom parameter --
jsonrset : [{"associationid":"265694","isdelete":"1","rolename": "Meeting","consumerid":"8276202","providerid":"11190976"}]
--End custom parameter--

ConsumerProviderDelete1.PNG

See Also

SmartConnect - RESTful API
JSON API (SmartConnect) Standard Field Names


API Sample Code