JSON API (SmartConnect)

From SmartWiki
Revision as of 10:28, 28 March 2018 by Lalaine Songalia (talk | contribs) (General Overview of the API)

Jump to: navigation, search

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.
    • 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 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 SmartConnect 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  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 executed for the added/selected record type and item/level
  • Workflows that may exist will be triggered

See Also

JSON API (SmartConnect) Prerequisite
JSON API (SmartConnect) Standard Field Names
API Sample Code
Creating SmartConnect Function
Using SmartConnect Function