Difference between revisions of "Bxp API - APP API"

From All n One's bxp software Wixi

Jump to: navigation, search
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Warning! =
+
= Source =
  
  
This document is under construction.
+
N.B.  This API is a subst of the full bxp API [[Bxp_API]]
  
  
Line 37: Line 37:
 
== Function List ==
 
== Function List ==
  
General
 
* reminders
 
* todo
 
* diary
 
* campaignlookup
 
  
Settings
+
The functions are laid out in terms of usual order of processing
* settings
 
* config
 
** config_primary
 
** config_buttonX
 
  
Insert
+
Initial
* insert
+
* login [[Bxp_API_APP_-_Function_-_Login]]
** insert_listee
+
* settings [[Bxp_API_APP_-_Function_-_Settings_and_Confg]]
** insert_record
+
* config_primary [[Bxp_API_APP_-_Function_-_Settings_and_Confg#config_function]]
 +
* config_buttonX [[Bxp_API_APP_-_Function_-_Settings_and_Confg#config_function]]
  
List
 
* list
 
** list_appointment
 
** list_hamsters
 
** list_listee
 
** list_reminders
 
  
 +
Lister
 +
* list_listee [[Bxp_API_APP_-_Function_-_Lister]]
 +
* insert_listee [[Bxp_API_APP_-_Function_-_Lister#Create_Listee]]
  
  
== Login Function ==
+
Diary
 +
* diary [[Bxp_API_APP_-_Function_-_Diary]]
  
  
Primary Function: Provide a login session token
+
Forms
 +
* formlookup  [[Bxp_API_APP_-_Function_-_Diary]]
 +
* insert_formrecord [[Bxp_API_APP_-_Function_-_Diary#Form_Insert_Function]]
  
  
You must post four key pair values. (not including the semi colons)
+
System
 +
* list_hamsters  [[Bxp_API_APP_-_Function_-_Hamster]]
  
* strFunction:login
 
* strSystem:client_demo
 
* strClient_Username:Demo Account
 
* strClient_Password:demoPassword
 
  
 +
Future build items
 +
* reminders (future build)
 +
* todo (future build)
 +
* list_reminders  (future build)
 +
* list_appointment  (future build)
  
The system will respond with XML.
 
 
 
<syntaxhighlight lang="xml">
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<data>
 
<strFunction>login</function>
 
<intErrorId></intErrorId>
 
<strError></error>
 
<intClient_Id>123</userid>
 
<strClient_SessionField>asdfasdfasdf</strClient_SessionField>
 
</data>
 
</syntaxhighlight>
 
 
 
 
== Settings / Config recall Function ==
 
 
 
Primary Function: Provide APP settings for the bxp app.
 
 
 
You must post four key pair values. (not including the semi colons)
 
 
* strFunction:settings
 
* strSystem:client_demo
 
* intClient_Id:123
 
* strClient_SessionField:asdfasdfasdf
 
 
 
The Client Id and Client Session Field are retrieved from the login process.
 
 
 
It is possible to also limit the data returned to a specific button or just the primary settings.  Use config_primary or config_buttonX (replacing X with the button number) instead of settings.
 
 
 
The system will respond with XML.  The comments were added for highlighting purposes only and will not be in the exported xml
 
 
 
<syntaxhighlight lang="xml">
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<data>
 
<strFunction>settings</function>
 
<intErrorId></intErrorId>
 
<strError></error>
 
<!-- Primary Settings  -->
 
<intInterface_SystemId>2</intInterface_SystemId>
 
<intInterface_UserId>0</intInterface_UserId>
 
<intInterface_Columns>2</intInterface_Columns>
 
<strInterface_RSSTitle>Latest News</strInterface_RSSTitle>
 
<strInterface_RSSFeed>http://ww3.allnone.ie/client/client_allnone/message/rssfeed.asp</strInterface_RSSFeed>
 
<strInterface_StoreSystemAndUsername>true</strInterface_StoreSystemAndUsername>
 
<strInterface_Image_LogoURL>http://ww3.allnone.ie/client/client_allnone/images/Banner.jpg</strInterface_Image_LogoURL>
 
<strInterface_Image_Background>http://ww3.allnone.ie/images/backgrounds/textureBackground002.jpg</strInterface_Image_Background>
 
<strInterface_FontColours>#000000,#000000,#000000</strInterface_FontColours>
 
<strInterface_FontFaces>Calibri,Calibri,Calibri</strInterface_FontFaces>
 
<strInterface_FontSizes>18,12,10</strInterface_FontSizes>
 
<strInterface_SystemKeywords>Login,Back,Get config file,Reset all settings</strInterface_SystemKeywords>
 
<!-- Button 0 Settings  -->
 
<strInterface_Button0_Title>To Do!</strInterface_Button0_Title>
 
<strInterface_Button0_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button0_Styling>
 
<strInterface_Button0_Layout>1Text1Button1LargeDisplay</strInterface_Button0_Layout>
 
<strInterface_Button0_FunctionType>App</strInterface_Button0_FunctionType>
 
<strInterface_Button0_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userApp.asp</strInterface_Button0_APICall>
 
<strInterface_Button0_Config>[[--SEP--]]Insert,Listee[[--SEP--]]List,Listee,All</strInterface_Button0_Config>
 
<strInterface_Button0_URL></strInterface_Button0_URL>
 
<strInterface_Button0_Parameters></strInterface_Button0_Parameters>
 
<!-- Button 1 Settings  -->
 
<strInterface_Button1_Title>Ticket</strInterface_Button1_Title>
 
<strInterface_Button1_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button1_Styling>
 
<strInterface_Button1_Layout>1SmallText1LargeText1Button</strInterface_Button1_Layout>
 
<strInterface_Button1_FunctionType>App</strInterface_Button1_FunctionType>
 
<strInterface_Button1_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userAPP_Main.asp</strInterface_Button1_APICall>
 
<strInterface_Button1_Config>[[--SEP--]][[--SEP--]]Insert,Record,intCampaignId,strFields,strValues</strInterface_Button1_Config>
 
<strInterface_Button1_URL></strInterface_Button1_URL>
 
<strInterface_Button1_Parameters></strInterface_Button1_Parameters>
 
<strInterface_Button2_Title>Today</strInterface_Button2_Title>
 
<strInterface_Button2_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button2_Styling>
 
<strInterface_Button2_Layout>2LargeDisplay1LinkButton</strInterface_Button2_Layout>
 
<strInterface_Button2_FunctionType>App</strInterface_Button2_FunctionType>
 
<strInterface_Button2_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userAPP_Main.asp</strInterface_Button2_APICall>
 
<strInterface_Button2_Config>List,Listee,Today[[--SEP--]]List,Appointment,Today[[--SEP--]]Redir,Button0</strInterface_Button2_Config>
 
<strInterface_Button2_URL></strInterface_Button2_URL>
 
<strInterface_Button2_Parameters></strInterface_Button2_Parameters>
 
<strInterface_Button3_Title>Tomorrow</strInterface_Button3_Title>
 
<strInterface_Button3_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button3_Styling>
 
<strInterface_Button3_Layout>2LargeDisplay1LinkButton</strInterface_Button3_Layout>
 
<strInterface_Button3_FunctionType>App</strInterface_Button3_FunctionType>
 
<strInterface_Button3_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userAPP_Main.asp</strInterface_Button3_APICall>
 
<strInterface_Button3_Config>List,Listee,Tomorrow[[--SEP--]]List,Appointment,Tomorrow[[--SEP--]]Redir,Button0</strInterface_Button3_Config>
 
<strInterface_Button3_URL></strInterface_Button3_URL>
 
<strInterface_Button3_Parameters></strInterface_Button3_Parameters>
 
<strInterface_Button4_Title>Contacts</strInterface_Button4_Title>
 
<strInterface_Button4_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button4_Styling>
 
<strInterface_Button4_Layout>1Text1Button1LargeDisplay</strInterface_Button4_Layout>
 
<strInterface_Button4_FunctionType>App</strInterface_Button4_FunctionType>
 
<strInterface_Button4_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userAPP_Main.asp</strInterface_Button4_APICall>
 
<strInterface_Button4_Config>[[--SEP--]]Lookup,intCampaign_Id,strCDA_X_field_Y_Z-strCDA_X_field_Y_Z[[--SEP--]]</strInterface_Button4_Config>
 
<strInterface_Button4_URL></strInterface_Button4_URL>
 
<strInterface_Button4_Parameters></strInterface_Button4_Parameters>
 
<strInterface_Button5_Title>Critical</strInterface_Button5_Title>
 
<strInterface_Button5_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button5_Styling>
 
<strInterface_Button5_Layout>1LargeDisplay</strInterface_Button5_Layout>
 
<strInterface_Button5_FunctionType>App</strInterface_Button5_FunctionType>
 
<strInterface_Button5_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userAPP_Main.asp</strInterface_Button5_APICall>
 
<strInterface_Button5_Config>List-Hamsters</strInterface_Button5_Config>
 
<strInterface_Button5_URL></strInterface_Button5_URL>
 
<strInterface_Button5_Parameters></strInterface_Button5_Parameters>
 
<strInterface_Button6_Title>Website</strInterface_Button6_Title>
 
<strInterface_Button6_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button6_Styling>
 
<strInterface_Button6_Layout>Redirect</strInterface_Button6_Layout>
 
<strInterface_Button6_FunctionType>Redirect</strInterface_Button6_FunctionType>
 
<strInterface_Button6_APICall></strInterface_Button6_APICall>
 
<strInterface_Button6_Config></strInterface_Button6_Config>
 
<strInterface_Button6_URL>http://www.bxpsoftware.com</strInterface_Button6_URL>
 
<strInterface_Button6_Parameters></strInterface_Button6_Parameters>
 
<strInterface_Button7_Title>Wixi</strInterface_Button7_Title>
 
<strInterface_Button7_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button7_Styling>
 
<strInterface_Button7_Layout>Redirect</strInterface_Button7_Layout>
 
<strInterface_Button7_FunctionType>Redirect</strInterface_Button7_FunctionType>
 
<strInterface_Button7_APICall></strInterface_Button7_APICall>
 
<strInterface_Button7_Config></strInterface_Button7_Config>
 
<strInterface_Button7_URL>http://www.bxpsoftware.com/wixi</strInterface_Button7_URL>
 
<strInterface_Button7_Parameters></strInterface_Button7_Parameters>
 
<strInterface_Button8_Title>System</strInterface_Button8_Title>
 
<strInterface_Button8_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button8_Styling>
 
<strInterface_Button8_Layout>Redirect</strInterface_Button8_Layout>
 
<strInterface_Button8_FunctionType>Redirect</strInterface_Button8_FunctionType>
 
<strInterface_Button8_APICall></strInterface_Button8_APICall>
 
<strInterface_Button8_Config></strInterface_Button8_Config>
 
<strInterface_Button8_URL>https://ww3.allnone.ie/client/client_allnone/main/main.asp</strInterface_Button8_URL>
 
<strInterface_Button8_Parameters>strInterface_LoginId,strInterface_LoginKey</strInterface_Button8_Parameters>
 
<strInterface_Button9_Title>Settings</strInterface_Button9_Title>
 
<strInterface_Button9_Styling>#ff0000,#000000,Calibri,12,URL</strInterface_Button9_Styling>
 
<strInterface_Button9_Layout>Settings</strInterface_Button9_Layout>
 
<strInterface_Button9_FunctionType>App</strInterface_Button9_FunctionType>
 
<strInterface_Button9_APICall>https://ww3.allnone.ie/client/client_allnone/cti/userAPP_Main.asp</strInterface_Button9_APICall>
 
<strInterface_Button9_Config>strInterface_LoginId,strInterface_LoginKey</strInterface_Button9_Config>
 
<strInterface_Button9_URL></strInterface_Button9_URL>
 
<strInterface_Button9_Parameters></strInterface_Button9_Parameters>
 
</data>
 
</syntaxhighlight>
 
 
 
 
== Diary Function ==
 
 
 
 
Primary Function: Provide listing of diary events
 
 
 
You must post five key pair values. (not including the semi colons)
 
 
* strFunction:diary
 
* strSystem:client_demo
 
* intClient_Id:123
 
* strClient_SessionField:asdfasdfasdf
 
* intDiary:1
 
 
The strFunction setting can have a number of settings.
 
 
* diary - defaults for today
 
* diary_today - explicitly today listing
 
* diary_tomorrow - explicitly tomorrow listing
 
* diary_thisweek - explicitly this week listing
 
* diary_nextweek - explicitly next week listing
 
* diary_thismonth - explicitly this month listing
 
* diary_nextmonth - explicitly next month listing
 
 
 
The intDiary is the specific diary to be queried.
 
 
 
The system will respond with XML.
 
 
 
<syntaxhighlight lang="xml">
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<data>
 
<strFunction>diary_today</strFunction>
 
<intErrorId>0</intErrorId>
 
<strError></strError>
 
<dtePeriodStart>2015-01-01 00:00:00</dtePeriodStart>
 
<dtePeriodEnd>2015-01-02 00:00:00</dtePeriodEnd>
 
<item>
 
<id>2490</id>
 
<title>Demo Item 1</title>
 
<start>2015-01-03T14:30:00</start>
 
<end>2015-01-03T17:30:00</end>
 
<url>../appointment/userTimeEvent_Edit-details.asp?intTime_Event_Id=2490</url>
 
</item>
 
<item>
 
<id>2491</id>
 
<title>Demo Item 2</title>
 
<start>2015-01-06T14:00:00</start>
 
<end>2015-01-06T15:30:00</end>
 
<url>../appointment/userTimeEvent_Edit-details.asp?intTime_Event_Id=2491</url>
 
</item>
 
<item>
 
<id>1171</id>
 
<title>Demo Item 3</title>
 
<start>2015-01-08T10:00:00</start>
 
<end>2015-01-08T14:00:00</end>
 
<url>../appointment/userTimeEvent_Edit-details.asp?intTime_Event_Id=1171</url>
 
</item>
 
</data>
 
 
</syntaxhighlight>
 
 
 
Notes:
 
 
* Each item represents a calendar entry.  Id is unique for each entry.
 
* All titles are HTML encoded.
 
* Time is separated with a T.
 
* The URL represents navigation within the bxp system to be able to edit that item.
 
  
  
Line 300: Line 77:
  
  
# "A function must be provided"
+
For a full listing of all errors [[Bxp_API_APP_-_Error_Listing]]
# "A system must be provided"
 
# "Cross System Calls Not Possible [your call] [system location] "
 
# "Invalid Account Details"
 
# "Login - No Username"
 
# "Login - No Password"
 
# "Login - System Not Active"
 
# "Login - System Expired"
 
# "Login - Unrecognised username [username]"
 
# "Login - Unrecognised username and or password"
 
# "Login - IP Restriction Failure"
 
# "Unrecognised Function [function]"
 
# "Account Check - No client id"
 
# "Account Check - No session field"
 
# "Account Check - Account not found"
 
# "Diary - No Diary Id passed"
 
# "Diary - No permissions to access this diary [intDiary]"
 
# "Diary - Incorrect parameters"
 
  
  
Line 327: Line 87:
  
 
More details on the original project spec can be found here.
 
More details on the original project spec can be found here.
 +
 +
 +
 +
[[Category:Topic:bxp_APP_API]]
 +
[[Category:Topic:bxp_API]]

Latest revision as of 12:50, 5 September 2015

1 Source

N.B.  This API is a subst of the full bxp API Bxp_API


2 Introduction

The bxp API (Application Programming Interface) allows digital interaction with bxp without the need for a human to interact with bxp.


The bxp APP API is a subset of the bxp API designed specifically to work with APPs.


3 How it works

The APP API requires secure posts to be sent to the relevant system. This can be done using a number of DOM (Document Object Technologies)


The primary post is sent to https://ww3.allnone.ie/client/client_demo/cti/userAPP_Main.asp You must replace client_demo with the system you are communicating with.


A number of criteria must be passed for the process to work. The first process is a login process which will provide tokenisation for your app.


After login, all function calls must include the tokens in order for the API to respond correctly.


4 Functions

4.1 Function List

The functions are laid out in terms of usual order of processing

Initial


Lister


Diary


Forms


System


Future build items

  • reminders (future build)
  • todo (future build)
  • list_reminders (future build)
  • list_appointment (future build)



5 Error Listing

For a full listing of all errors Bxp_API_APP_-_Error_Listing


6 History

This API was developed to further the work of Calvin O'Brien and Adam McGivern who work as interns in All n One developing the bxp APP for iPhone, Android and Microsoft devices.

More details on the original project spec can be found here.