Posta Moldovei Terminals API base on pt.md library (https://pt.md)
- NodeJS >= v8.x.x
npm install pt.md-apicp .env.sample .envWe advice to
.envand changeJWT_SECRETdue to security reasons
npm run startProduction involves pm2 tool usage, thus once started you should run
npm run stopto stop the server
npm run start:devcurl -XPOST http://localhost:3001/rpc -H 'Content-Type: application/json' -H 'Authorization: Bearer your-jwt-token' -d '{"jsonrpc":"2.0","method":"ping","params":[],"id":0}'You should see: {"jsonrpc":"2.0","id":0,"result":"pong"}
POSTMAN Collection: api.postman_collection.json
REST Api:
[POST] path=/token | body={"username":"","password":""}Obtain jWT token for further calls
RPC Methods (/rpc):
method=ping | params=[]Is a RPC healthcheck methodmethod=list | params=[from, to, page, size]Retrieve list of items delivered or to be delivered- *from[date] - list from date, default
now - 7 days - *to[date] - list to date, default
now - *page[int] - list from page starting w/ 1, default
1 - *size[int] - items per page, default
100
- *from[date] - list from date, default
method=pay | params=[id]Pay for an order- !id[int] - Id of the order (
orderID)
- !id[int] - Id of the order (
Pay method $.result is an HTML string that might be open in browser or webview to start the payment flow.
All RPC method should be authorized using JWT token obtained from /token endpoint.
All date types are passed as strings to
new Date()constructor (@ref https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date).
- Add JWT tokens expiration and invalidation logic