Difference between revisions of "JSON API (SmartConnect)"

From SmartWiki
Jump to: navigation, search
(General Overview of the API)
(Redirected page to SmartConnect - RESTful API)
 
Line 1: Line 1:
==Introduction==
+
#REDIRECT [[SmartConnect - RESTful API]]
SmartSimple’s SmartConnect JSON API provides a relatively easy to use method of integrating SmartSimple information with other web services and other programs.
 
 
 
The API uses industry '''standard JSON syntax and constructs'''. If you are not familiar with JSON you should take a look at the [https://www.w3schools.com/js/js_json_intro.asp following tutorial] before venturing much further in this topic:
 
 
 
==SmartSimple System Version==
 
{| class="wikitable"
 
|-
 
||Clients must be on the November 2015 or a more recent upgrade to use the API.
 
|}
 
 
 
==General Overview of the API==
 
In order to use the API you will take the following steps:
 
 
 
* Within your instance of SmartSimple you will create one or more API functions that can be called through the API.
 
 
 
* Each function you create is linked to a specific SmartSimple object such as Organization, Contact, Report, Universal Tracking Application Level 1 object, Level 2 and level 3.
 
 
 
* You define the fields that can be retrieved from that object through that function. This approach ensures that you never expose data to the API that you don't want people to use in the API.
 
 
 
* You choose the Action Type that you wish to use for the function. 
 
** '''Get''' - Retrieve a single record for the object type you have selected in the function.
 
** '''List''' - Retrieve multiple records or the object type you have selected in the function.
 
** '''Update''' - Change data in one or more fields in the object you have retrieved. Update is also used to create new objects.
 
** '''Download File''' - Downloads to the browser a file you have retrieved.
 
** '''List Files''' - Retrieves a list of files from a specified object.
 
** '''Search Files''' - Retrieve a list of files containing specific string values.
 
** '''Update Associations''' - Change data in one or more fields in the association table between two objects. Update is also used to create new association records.
 
** '''List Associations''' - Retrieves a list of associations of a specified object.
 
** '''List Multiple Addresses''' - Retrieves a list of addresses of an Organization or a Contact.
 
** '''Update Multiple Addresses''' - Change data in one or more fields in the association table of an object you have retrieved. Update is also used to create new address records.
 
* Once saved, each function will generates and display a key that is unique to that function in that instance. You cannot use the function unless you supply the key.
 
 
 
Note: SmartSimple will increase the Action Types as we continue to enhance the API.
 
 
 
==JSON API Interactive Demonstration Page==
 
If you want to review how the API works and interact with some sample functions and test data be sure to visit the '''[https://api.smartsimple.com/devtools/dev_api.html interactive demonstration page]'''. This page is connected to a specific demonstration instance that contains sample data for testing.
 
 
 
====[https://api.smartsimple.com/devtools/dev_api.html Interactive Demonstration Page]====
 
==Configuring JSON Functions within SmartSimple==
 
The only functions you will be able to use within a instance of SmartSimple are the specific functions that have been enabled in that instance.
 
 
 
Visit the article [[Creating JSON functions|Creating SmartConnect Functions]] to learn how to add functions to your instance.
 
 
 
==Field List Syntax==
 
{| class="wikitable"
 
|-
 
||
 
|-
 
!|Field List Syntax
 
!|Example
 
|-
 
||Separate values with ";;"
 
||sf_Name;;cf_MyFieldName
 
|-
 
||Prefix Standard fields with "sf_"
 
||sf_Name
 
|-
 
||Prefix Custom fields with "cf_"
 
||cf_MyFieldName  or  cf_MyFieldssid
 
|-
 
||Application Metadata append with "." followed by what you want returned
 
||levelone.status or levelone.* (star returns all)
 
|}
 
 
 
===Application Metadata Options:===
 
====Level One Options====
 
* '''*'''
 
* levelone.*
 
* levelone.fields
 
* levelone.roles
 
* levelone.categories
 
* levelone.statuses
 
* levelone.types
 
* levelone.types.fields
 
 
 
====Level Two Options====
 
* leveltwo.*
 
* leveltwo.fields
 
* leveltwo.types
 
* leveltwo.types.fields
 
* leveltwo.status
 
 
 
====Level Three Options====
 
* levelthree.*
 
* levelthree.fields
 
* levelthree.types
 
* levelthree.types.fields
 
 
 
==Behavior of Template Formulas and Workflows==
 
* Any template formulas that may exist will be triggered for the added/selected record type and item/level
 
* Workflows that may exist will be triggered
 
 
 
==See Also==
 
[[JSON API (SmartConnect) Prerequisite]]<br />
 
[[JSON API (SmartConnect) Standard Field Names]]<br />
 
[[API Sample Code]]<br />
 
[[Creating JSON functions|Creating SmartConnect Function]]<br />
 
[[Using JSON functions|Using SmartConnect Function]]
 
 
 
 
 
[[Category:Integration]][[Category:API]][[Category:SmartConnect RESTful API]]
 

Latest revision as of 10:09, 31 July 2018