Difference between revisions of "Bxp API - APP API"

From All n One's bxp software Wixi

Jump to: navigation, search
Line 13: Line 13:
  
 
The bxp APP API is a subset of the bxp API designed specifically to work with APPs.
 
The bxp APP API is a subset of the bxp API designed specifically to work with APPs.
 +
  
  
Line 28: Line 29:
  
 
After login, all function calls must include the tokens in order for the API to respond correctly.
 
After login, all function calls must include the tokens in order for the API to respond correctly.
 +
  
  
 
= Functions =
 
= Functions =
 +
 +
 +
== Function List ==
 +
 +
General
 +
* reminders
 +
* todo
 +
* diary
 +
* campaignlookup
 +
 +
Settings
 +
* settings
 +
* config
 +
** config_all
 +
** config_buttonX
 +
 +
Insert
 +
* insert
 +
** insert_listee
 +
** insert_record
 +
 +
List
 +
* list
 +
** list_appointment
 +
** list_hamsters
 +
** list_listee
 +
** list_reminders
 +
 +
  
 
== Login Function ==
 
== Login Function ==

Revision as of 10:13, 16 August 2015

1 Warning!

This document is under construction.


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

General

  • reminders
  • todo
  • diary
  • campaignlookup

Settings

  • settings
  • config
    • config_all
    • config_buttonX

Insert

  • insert
    • insert_listee
    • insert_record

List

  • list
    • list_appointment
    • list_hamsters
    • list_listee
    • list_reminders


4.2 Login Function

Primary Function: Provide a login session token


You must post four key pair values. (not including the semi colons)

  • strFunction:login
  • strSystem:client_demo
  • strClient_Username:Demo Account
  • strClient_Password:demoPassword


The system will respond with 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>


4.3 Settings 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.


The system will respond with XML.


<?xml version="1.0" encoding="UTF-8" ?>
<data>
	<strFunction>settings</function>
	<intErrorId></intErrorId>
	<strError></error>

Data to go here!
	

</data>


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


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


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.


5 Error Listing

  1. "A function must be provided"
  2. "A system must be provided"
  3. "Cross System Calls Not Possible [your call] [system location] "
  4. "Invalid Account Details"
  5. "Login - No Username"
  6. "Login - No Password"
  7. "Login - System Not Active"
  8. "Login - System Expired"
  9. "Login - Unrecognised username [username]"
  10. "Login - Unrecognised username and or password"
  11. "Login - IP Restriction Failure"
  12. "Unrecognised Function [function]"
  13. "Account Check - No client id"
  14. "Account Check - No session field"
  15. "Account Check - Account not found"
  16. "Diary - No Diary Id passed"
  17. "Diary - No permissions to access this diary [intDiary]"
  18. "Diary - Incorrect parameters"


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.