Difference between revisions of "Bxp API"
From All n One's bxp software Wixi
Philip Lacey (talk | contribs) (Created page with "The BEAPI is a way for 3rd party systems to chat directly to Business Express. The API is publically available from [[[http://www.allnone.ie/whitepapers/BEAPI%20v5-0-3.docx]...") |
Philip Lacey (talk | contribs) |
||
| Line 1: | Line 1: | ||
| − | The BEAPI is a way for 3rd party systems to | + | The BEAPI is a way for 3rd party systems to interact directly with bxp software (bxp). |
| + | The formal API documentation is publicly available from [[[http://www.allnone.ie/whitepapers/BEAPI%20v5-0-3.docx]]] | ||
| − | The | + | The current version is 5-0-3. |
| + | |||
| + | |||
| + | == Basics == | ||
| + | |||
| + | All interactions are done with bxp through HTTPS Posts. Information is passed to bxp through a data "post" or the querystring parameters, depending on the sensitivity and capability of the calling 3rd party application. | ||
| + | |||
| + | [[File:BEAPIInteractions.png]] | ||
| + | |||
| + | |||
| + | The standard "User Interface" is what most agents and direct users will interact with. The interactions will be through a web address similar to https://ww3.allnone.ie/client/client_X/main/login.asp where X is change to the name of the bxp Client. | ||
| + | |||
| + | It is possible for 3rd party solutions to interact with the API which is a completely different and programmatic interface. | ||
| + | |||
| + | |||
| + | == External Access Setup overview == | ||
| + | |||
| + | The detailed setup on how to do this is explicitly detailed in the BEAPI document. | ||
| + | |||
| + | The summary is: | ||
| + | # Create a user but give the user no functional access to bxp | ||
| + | # Apply IP address restrictions to the account, so it can only be used from controlled environments | ||
| + | # Grant the user explicit access to the secure form data | ||
| + | # Explicitly allow the form data to be externally accessible | ||
| + | # From here the user account should be able to perform functions such as read or write to the data | ||
| + | |||
| + | == Read and write functionality == | ||
| + | |||
| + | There are many functions within the API but the most used are "formlogging" and "datasearch". | ||
| + | |||
| + | === FormLogging === | ||
| + | |||
| + | FormLogging is the process by which data is inserted into the secure data form. | ||
| + | |||
| + | <syntaxhighlight lang="php"> | ||
| + | |||
| + | //========================================================= | ||
| + | //Data Setup | ||
| + | //========================================================= | ||
| + | $url = 'https://ww3.allnone.ie/client/client_demo/cti/userCTI_GenericEntry.asp'; | ||
| + | //set the extrac POST variables required | ||
| + | $fields = array( | ||
| + | 'user_id' => urlencode('testing'), | ||
| + | 'user_key' => urlencode('testing'), | ||
| + | 'system' => urlencode('formlogging'), | ||
| + | 'campaignid' => urlencode('56') | ||
| + | ); | ||
| + | //url-ify the data for the POST | ||
| + | foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; } | ||
| + | |||
| + | //extract data from the post | ||
| + | foreach($_POST as $key => $value) { | ||
| + | $fields_string .= $key.'='.urlencode($value).'&'; | ||
| + | } | ||
| + | rtrim($fields_string,'&'); | ||
| + | //========================================================= | ||
| + | //Process Data | ||
| + | //========================================================= | ||
| + | //open connection and set the url, number of POST vars, POST data, execute post | ||
| + | $ch = curl_init(); | ||
| + | curl_setopt($ch, CURLOPT_URL, $url ); | ||
| + | curl_setopt($ch, CURLOPT_POST, 1 ); | ||
| + | curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string ); | ||
| + | curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1 ); | ||
| + | curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 ); | ||
| + | $result = curl_exec($ch); | ||
| + | curl_close($ch); | ||
| + | |||
| + | </syntaxhighlight> | ||
| + | |||
| + | |||
| + | Key Parameters | ||
| + | |||
| + | Line 5: The BE URL which will process the request. Client_demo should be replaced with the name of your system | ||
| + | |||
| + | Line 9: user_id is the username of the account with permission to access the form as set up in steps 2.7 and 2.8 of this document | ||
| + | Line 10: user_key is the password of the account with permission to access the form as set up in steps 2.7 and 2.8 of this document | ||
| + | |||
| + | Line 11: system is the function to be used, in this case formlogging | ||
| + | Line 12: campaignid is the Id of the form to be accessed. This Id is available from Main Menu > Data Profiling > Instant – Dashboards > Dashboard – System Information. | ||
| + | |||
| + | |||
| + | |||
| + | === DataSearch === | ||
| + | |||
| + | |||
| + | |||
| + | == Website Integrations == | ||
| + | |||
| + | For websites bxp provides read and write ability that is controlled by the website. These facilities can be applied to provide: | ||
| + | |||
| + | * Custom account management | ||
| + | * Customer Relationship Management | ||
| + | * Membership management | ||
| + | * Event management | ||
| + | * Appointment management | ||
| + | * Payment processing solution recording and management | ||
| + | * List or publication management | ||
| + | * CPD (Continuing Professional Development) point management | ||
| + | |||
| + | |||
| + | == Mobile and Table App Integrations == | ||
| + | |||
| + | |||
| + | == Computer Telephony Integration (CTI) == | ||
| + | |||
| + | |||
| + | == 3rd Party Software Integration == | ||
[[Category:Topic:bxp API]] | [[Category:Topic:bxp API]] | ||
Revision as of 21:07, 13 July 2014
The BEAPI is a way for 3rd party systems to interact directly with bxp software (bxp).
The formal API documentation is publicly available from [[[1]]]
The current version is 5-0-3.
Contents
1 Basics
All interactions are done with bxp through HTTPS Posts. Information is passed to bxp through a data "post" or the querystring parameters, depending on the sensitivity and capability of the calling 3rd party application.
The standard "User Interface" is what most agents and direct users will interact with. The interactions will be through a web address similar to https://ww3.allnone.ie/client/client_X/main/login.asp where X is change to the name of the bxp Client.
It is possible for 3rd party solutions to interact with the API which is a completely different and programmatic interface.
2 External Access Setup overview
The detailed setup on how to do this is explicitly detailed in the BEAPI document.
The summary is:
- Create a user but give the user no functional access to bxp
- Apply IP address restrictions to the account, so it can only be used from controlled environments
- Grant the user explicit access to the secure form data
- Explicitly allow the form data to be externally accessible
- From here the user account should be able to perform functions such as read or write to the data
3 Read and write functionality
There are many functions within the API but the most used are "formlogging" and "datasearch".
3.1 FormLogging
FormLogging is the process by which data is inserted into the secure data form.
//=========================================================
//Data Setup
//=========================================================
$url = 'https://ww3.allnone.ie/client/client_demo/cti/userCTI_GenericEntry.asp';
//set the extrac POST variables required
$fields = array(
'user_id' => urlencode('testing'),
'user_key' => urlencode('testing'),
'system' => urlencode('formlogging'),
'campaignid' => urlencode('56')
);
//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
//extract data from the post
foreach($_POST as $key => $value) {
$fields_string .= $key.'='.urlencode($value).'&';
}
rtrim($fields_string,'&');
//=========================================================
//Process Data
//=========================================================
//open connection and set the url, number of POST vars, POST data, execute post
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url );
curl_setopt($ch, CURLOPT_POST, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string );
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1 );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
$result = curl_exec($ch);
curl_close($ch);
Key Parameters
Line 5: The BE URL which will process the request. Client_demo should be replaced with the name of your system
Line 9: user_id is the username of the account with permission to access the form as set up in steps 2.7 and 2.8 of this document Line 10: user_key is the password of the account with permission to access the form as set up in steps 2.7 and 2.8 of this document
Line 11: system is the function to be used, in this case formlogging Line 12: campaignid is the Id of the form to be accessed. This Id is available from Main Menu > Data Profiling > Instant – Dashboards > Dashboard – System Information.
3.2 DataSearch
4 Website Integrations
For websites bxp provides read and write ability that is controlled by the website. These facilities can be applied to provide:
- Custom account management
- Customer Relationship Management
- Membership management
- Event management
- Appointment management
- Payment processing solution recording and management
- List or publication management
- CPD (Continuing Professional Development) point management
