Difference between pages "Upgrades" and "JSON API (SmartConnect)"

From SmartWiki
(Difference between pages)
Jump to: navigation, search
 
 
Line 1: Line 1:
=General Information=
+
== Introduction ==
==Next Upgrade Date==
 
The next upgrade is scheduled for '''{{CurrentUpgradeDate}}'''.<br />
 
  
==Upgrade Schedule==
+
SmartSimple’s SmartConnect JSON API provides a relatively easy to use method of integrating SmartSimple information with other web services and other programs.
{{Upgrade Schedule}}
 
  
We regularly update the list of upgrade features and schedule for both the backup and production environments on this Wiki page.
+
The API uses industry '''standard JSON syntax and constructs'''.  If you are not familiar with JSON you should take a look at the [http://www.w3schools.com/json/default.asp following tutorial] before venturing much further in this topic:
  
This page will provide a general overview of each upgrade, with links to the Wiki articles describing the new or updated features and how to use them. You can also [http://smart.smartsimple.com/s_signup.jsp?token=XVtQC1oGYF9bRxdFQhdQ subscribe] to the [[:Category:Newsletter Archives|Technical Journal]] that is sent out prior to each upgrade on the [http://smart.smartsimple.com/s_signup.jsp?token=XVtQC1oGYF9bRxdFQhdQ Newsletter Signup Page]. (Unsubscribe [http://smart.smartsimple.com/s_signup.jsp?token=XVtQC1oGYF9bQxNFQhdQ here]).
+
== SmartSimple System Version ==
 +
{| class="wikitable"
 +
|Clients must be on the November 2015 or a more recent upgrade to use the API.
 +
|}
  
==System Upgrade Process==
+
== General Overview of the API ==
  
The objective of the System Upgrade Process is to ensure that customers have a chance to review, without compromising the integrity of their production system, how their applications and information will work following the upgrade. In order to take advantage of this you will need to know how to access your backup instance of SmartSimple. If you need assistance with this either refer to the [[Backup Server and Testing Instances]] Wiki article, or contact the [[SmartSimple]] support desk.
+
In order to use the API you will take the following steps:
  
For clients on a Private Cloud enviornment, please review the [[SmartSimple Upgrade Process – Dedicated Server]] page.
+
* Within your instance of SmartSimple you will create one or more API functions that can be called through the API.
  
===Upgrade Schedule Details===
+
* 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.
{{Upgrade Schedule Details}}
 
  
===Backup Environment Update===
+
* 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.
  
* Each [[Backup Server and Testing Instances|backup environment]] will be updated to the "release candidate" prior to the upgrade date.
+
* You choose the Action Type that you wish to use for the function. Currently there are five action types:
* This update will provide for instance specific testing of release candidate, as you can log into your respective [[Backup Server and Testing Instances|backup environment]] and test the changes against your most current data and configuration.
+
** '''Get''' - Retrieve a single record for the object type you have selected in the function.
* Internal staff will also be using these environments to perform instance specific testing.
+
** '''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 Go/No-Go===
+
* 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.
* Subject to satisfactory testing on both the pre-production environments and the backup environments, the Go/No-Go decision will be made on the Wednesday prior to an upgrade release.
 
  
=Current Upgrade Package: February 2017=
+
Note: SmartSimple will increase the Action Types as we continue to enhance the API.
The production environments for the Public Cloud were last upgraded on {{LastUpgradeDate}}.
 
  
'''Important:''' The upgrade will be applied to your [[Backup Server and Testing Instances|backup environment]] two weeks prior to the scheduled upgrade date for your production environment. You are encouraged to log into your backup environment during this period to test the changes against your most recent data and configuration.
+
== JSON API Interactive Demonstration Page ==
  
If your organization is subscribed to Private Cloud hosting, the upgrade will be made available to you two weeks after the Public Cloud release.
+
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]====
  
{{February2017Upgrade}}
+
== Configuring JSON Functions within SmartSimple ==
  
=Previous Upgrades=
+
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]] to learn how to add functions to your instance.
See the [[Previous Upgrades]] page for a list of previously-implemented upgrade features.
 
  
=Future Upgrades=
+
== Field List Syntax ==
Click [[Future Upgrades|here]] for a listing of future upgrade dates.
 
  
[[Category:Upgrades]]
+
 
 +
{| 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
 +
|-
 +
|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
 +
 
 +
[[Category:Integration]][[Category:API]][[Category:SmartConnect RESTful API]]

Revision as of 14:44, 16 March 2017

Introduction

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 following tutorial before venturing much further in this topic:

SmartSimple System Version

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. Currently there are five action types:
    • 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.
  • 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 interactive demonstration page. This page is connected to a specific demonstration instance that contains sample data for testing.

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 to learn how to add functions to your instance.

Field List Syntax

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
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