Creating SmartConnect Functions
Please note that this page is currently under construction. There is more information to come. |
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.
- Log into the copy of SmartSimple where you wish to add the function.
- Navigate to Global Settings.
- Click on the Integrations tab.
- Click on the SmartConnect API link. Existing functions will be listed here for you to update.
- 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 – this restricts the fields that are to be retrieved from the underlying object.
SmartConnect Function Samples
Visit the 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
Description - This function will retrieve a single record from the organization using the 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
Retrieve a Single Contact Record
This function will retrieve a single record from the users table using the User ID. The function is set up to retrieve the fields listed under Field List.
Function Name - 3.01.2 Get Method Sample 2: Retrieve a Single Contact Record
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
Retrieve a Single Grant Application Record
Function Name - 3.01.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
Sample 4: Retrieve a Single Grant Application Payment Record
Function Name - 3.01.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
Report
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 -
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--
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--
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--
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--
List
List
Retrieve a list of contacts
Function Name - 3.03.1.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"}]
getstorevalue :
--End custom parameter--
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"}]
getstorevalue :
--End custom parameter--
Retrieve a list of organizations
Function Name - 3.03.1.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 :
getstorevalue :
--End custom parameter--
Sample 2B
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.
--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"}]
getstorevalue :
--End custom parameter--
Retrieve a list of claims
Function Name - 3.03.1.3 List Method Sample 3: CMS360° - Retrieve a list of claims
Description - To retrieve a list of claims from professors in profession 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"}]
getstorevalue :
--End custom parameter--
List File
List files of an existing organization
Function Name - 3.03.2.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
getstorevalue :
--End custom parameter--
List files from an existing application
Function Name - 3.03.2.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--
List Notes
List notes from an existing application
Function Name - 3.03.3.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--
List Multiple Addresses
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
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--
List Associations
List Contact associations from an existing application
Function Name - 3.03.5.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:
recordid = Opportunity ID
type = either '"contacts"' or '"organizations"'
--Begin custom parameter --
recordid: 8276165
type: contacts
--End custom parameter--
List Organization associations from an application
Function Name - 3.03.5.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:
recordid = Opportunity ID
type = either '"contacts"' or '"organizations"'
--Begin custom parameter --
recordid: 8276165
type: organizations
--End custom parameter--
'Metadata'
Get Metadata of a Universal Tracking Application
Function Name - 3.04.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.
Get Metadata of Organizations
Function Name - 3.04.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.
Get Metadata from Contacts
Function Name - 3.04.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.
Update
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--
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--
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--
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--
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--
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--
Update Associations
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:
recordid - is the Company ID where the user will be associated to.
isupdate - "1" for yes to update and "0" for to add new record
rolename - association role of the user
--Begin custom parameter --
jsonrset : [{"recordid":"8276165","contacts":[{"contactid":"3108577","rolename":"Meeting Participant","isupdate":"0"}]}]
--End custom parameter--
Sample 3B
Description - To update association information of an existing Submission Manager Level 1 record
Mandatory fields to update records:
recordid - is the Company ID where the user will be associated to.
isupdate - "1" for yes and "0" for no
--Begin custom parameter --
jsonrset : [{"recordid":"8276165","contacts":[{"contactid":"3108429","rolename":"Signee Internal","isupdate":"1"}]}]
--End custom parameter--
Download 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--
Search File
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--