Difference between revisions of "Creating SmartConnect Functions"
(→List) |
(→Delete Association Record) |
||
Line 892: | Line 892: | ||
[[File:APIFunctionDeleteL1User.PNG|800px]] | [[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. </br> | ||
+ | '''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 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=== | ===Transaction=== |
Revision as of 09:46, 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
- 1 Creating a New Function
- 2 Function Settings
- 3 Configurations and Responses
- 3.1 Metadata
- 3.2 Report
- 3.2.1 Report Query
- 3.2.1.1 A report query on the number of assessors grouped by specialty
- 3.2.1.2 A report query on a list of Specialty with more than 5 Assessors per specialty
- 3.2.1.3 A report query on a list of Grants grouped by Organization
- 3.2.1.4 A report query on a list of Grants grouped by Focus Area
- 3.2.1.5 A report query on a list of Payments grouped by Grant Type
- 3.2.1 Report Query
- 3.3 Get
- 3.4 List
- 3.5 Update
- 3.6 Upload/Download File
- 3.7 Search File
- 3.8 Variables Replace
- 3.9 Delete
- 3.9.1 Delete a Single Organization Record
- 3.9.2 Delete a Single Contact Record
- 3.9.3 Delete Organization Records (Batch delete)
- 3.9.4 Delete a Single Contact Record
- 3.9.5 Delete a Single Grant Application Record
- 3.9.6 Delete a Single Grant Application Payment Record
- 3.9.7 Delete Association Record
- 3.9.8 Delete Multiple Upload Files
- 3.10 Transaction
- 3.11 UTA Consumer/Provider
- 4 See Also
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 – 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.
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.
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.
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--
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--
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--
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
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
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
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
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--
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--
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--
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--
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--
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--
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--
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--
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--
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.
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.
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.
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--
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--
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--
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--
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--
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--
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
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--
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--
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--
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.
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--
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--
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--
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--
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--
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--
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 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 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 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 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--
Delete Multiple Upload Files
After the July 2023 upgrade, new function to delete files from Upload - Multiple Files Storage fields was added. </br>
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 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--
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--
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--
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--
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--
Sample 3B
Description - Update existing transaction record
--Begin custom parameter --
jsonrset : [{"recordid":"2738520","sf_Subject":"Changed subject thru api"}]
--End custom parameter--
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--
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/
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/
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--
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--
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--
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--
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--
See Also
SmartConnect - RESTful API
JSON API (SmartConnect) Standard Field Names