Execute 1010data XML API transactions via JavaScript.
npm install tenxmlapi --save-dev
`
XmlApi functions
####login(callback)
Log into the platform.
* If successful, the encrypted session id and password will be kept and used for future calls.
####query(apiName, xml, callback)
Execute a query.
* If options.autoLogin=true, calls the 'login' function if necessary.
* The input xml will automatically be wrapped with '``' if not present.
Returns:
* A string containing the response XML.
####queryToJson(apiName, xml, callback)
Execute a query and convert the response to a javascript object (a.k.a JSON object)
* If options.autoLogin=true, calls the 'login' function if necessary.
* The input xml will automatically be wrapped with '``' if not present.
Returns:
* A javascript object (a.k.a JSON object)
####queryByUrl(url, xml, callback)
Execute a query. Url is the full custom url to the api.
* If options.autoLogin=true, calls the 'login' function if necessary.
* The input xml will automatically be wrapped with '``' if not present.
Returns:
* A string containing the response XML.
####queryByUrlToJson(url, xml, callback)
Execute a query and convert the response to a javascript object (a.k.a JSON object). Url is the full custom url to the api.
* If options.autoLogin=true, calls the 'login' function if necessary.
* The input xml will automatically be wrapped with '``' if not present.
Returns:
* A javascript object (a.k.a JSON object)
##Example
`javascript
// all available options (shown with default values if not specified)
var options = {
xmlgateway: 'https://www2.1010data.com/beta-latest/gw.k',
uid: 'required',
password: 'required',
log: true, // log request and response to console
kill: 'possess', // yes, no, possess, auth
autoLogin: true, // when executing a query call login if it has not already been called
jsonOpts: { // options for the json parser (see https://www.npmjs.com/package/xml2js)
explicitArray: false
}
};
var xmlApi = require("tenxmlapi").create(options);
var inputXml = 'pub.doc.retail.salesdetail ';
xmlApi.query('query', inputXml, function logResults(err, resultXml) {
if (err) {
console.error(err);
process.exit(1);
}
console.log(resultXml);
process.exit(0);
});
``