Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
Column

This section describes the basic protocol used to interact with frevvo Data APIs including examples of what Atom requests may look like, what kind of responses to expect, and so on. It is intended for anyone wanting an understanding the general idea of the format and protocol used by the frevvo Data API and it assumes that you understand the basics of XML, namespaces, Atom feeds, and the main HTTP requests GET, POST, PUT and DELETE, as well as the RESTful concept of a resource. Using the API at this level your client application can interact with the frevvo Server using any programming language that lets you issue HTTP requests and consume XML-based responses.

There are various different types of frevvo resources that can be viewed and manipulated by the Data API. Most of these resources are things that a designer sees when creating new forms and navigating the application using the frevvo UI, for instance users, applications, form, themes, schemas, etc. So before delving into the API specifics it is a good idea to understand these different types of resources and how they relate to each other. The following diagram shows these different resources currently being exposed by the Data API and the ownership relationships among them:

Frevvo Resources.pngImage Added

Column
width240px

On this page:

Table of Contents
maxLevel1

 

Basically, for each resource type

...

in  (User, Application, FormType, Theme, Schema) a Atom Feed representation is provided. The following table shows the different URI to access the different resource feeds:

Column
width240px

On this page:

Table of Contents
maxLevel1

 

...

           Data API URLs

Resource Description  Resource URI
Users Feed /frevvo/web/t/{tenantId}/api/users
User Entry/frevvo/web/t/{tenantId}/api/user/{id}
ApplicationFeed /frevvo/web/t/{tenantId}/api/apps?ownerId={userId}
ApplicationEntry/frevvo/web/t/{tenantId}/api/app/{id}
ThemeFeed/frevvo/web/t/{tenantId}/api/themes?ownerId={userId}
ThemeEntry /frevvo/web/t/{tenantId}/api/theme/{id}
FormTypeFeed/frevvo/web/t/{tenantId}/api/formtypes?ownerId={appId}
FormTypeEntry /frevvo/web/t/{tenantId}/api/formtype/{id}
SchemaFeed/frevvo/web/t/{tenantId}/api/schemas?ownerId={appId}
SchemaEntry/frevvo/web/t/{tenantId}/api/schema/{id}
ControlTypeFeed/frevvo/web/t/{tenantId}/api/controltypes?ownerId={formTypeId}
ControlTypeEntry/frevvo/web/t/{tenantId}/api/controltype/{id}
SubmissionFeed /frevvo/web/t/{tenantId}/api/submissions
SubmissionEntry /frevvo/web/t/{tenantId}/api/submission/{id}

...