Ripple Data API vs Ripple RPC I need to write a program that monitors the transactions that sent to me.
My approach is to periodically (like every 2 minutes) call the Ripple public api to get transactions for my account.  But on the developer doc, I find two way to achieve this:


Ripple Data API . 
example: 



  https://data.ripple.com/v2/accounts/rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn/transactions?type=Payment&amp;result=tesSUCCESS&amp;limit=3



WebSocket/Json-RPC API. send to s2.ripple.com:443
with websocket or http.  example:



  {   "id": 1,   "command": "account_tx",
  "account": 
  "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "ledger_index_min": -1,
  "ledger_index_max": -1,
  "binary": false,   "count": false,
  "limit": 10,   "forward": false }


I didn't check carefully, but they seem to have same response(with different format). 

My question is :


are they equivalent?
which one should be preferred or which one is recommended by ripple?
You can use both solutions. Api is based on Json-RPC. Its app for getting transactions on address. You can change it for your needs.

const RippleAPI = require('ripple-lib').RippleAPI;
var test_server = 'wss://s2.ripple.com';
const api = new RippleAPI({
    server: test_server // Public rippled server
});
api.connect().then(() =&gt; {
    /* begin custom code ------------------------------------ */
    const myAddress = 'rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn';
    console.log('getting account info for', myAddress);
    return api.getTransactions(myAddress);
}).then(info =&gt; {
    console.log(info);
    /* end custom code -------------------------------------- */
}).then(() =&gt; {
    return api.disconnect();
}).then(() =&gt; {
    console.log('done and disconnected.');
}).catch(console.error);

Good luck)