0.0.3 • Published 4 years ago

365farmnet v0.0.3

Weekly downloads
32
License
MIT
Repository
github
Last release
4 years ago

365FarmNet Connect - Node.js client

A simple promise based client for the 365FarmNet Connect REST API.

Quick start

npm install 365farmnet

Note: This library requires Node.js > v.10.0

Import the library, and pass the partner ID and secret that you got from registering at https://devcon.365farmnet.com/.

const farmnet = require('365farmnet')({
  partnerId: 'yourPartnerId',
  secret: 'yourPartnerSecret'
})

Make requests to the 365FarmNet Connect REST API by calling the imported function (farmnet if you follow this example) in the following manner:

// farmnettoken is the JWT that is passed to the iframe within the 
// 365FarmNet main application
farmnet('fields', {
  token: farmnettoken,
  params: {
    includeGeometry: false,
    includeSoilType: true
  }
}).then(data => {
  // data will contain all fields of the farm
}).catch(err => {
  console.log(err)
})

API

The module exports a default function. It takes two arguments:

farmnet('endpoint', options)

NameDescription
endpoint string requiredThe REST API endpoint to call. See documentation for all available endpoints.
options.token string requiredThe token property of the options object needs to be a valid JWT farmnettoken.
options.params objectOptional query params for the API call.
options.data objectOptional body params for the API call (for POST/PUT requests).
options.method stringDefault: 'GET'. Can be any HTTP request method valid for the given endpoint.

Testing

Fork this repo, then put a credentials.js file in the root directory with the following content.

// content of the credentials.js file, which needs to be placed at the root of this repo
module.exports = {
  partnerId: 'your_partner_id',
  secret: 'your_secret'
}

Then run

npm test

This will spin up an Express.js server on http://localhost:3000/.

Login to your account at https://devcon.365farmnet.com/, click on the Developer tab -> Developer Playground. If all tests pass, you should see All test passed!, if not, check your console 😄

Contribution

Please feel free to submit an issue or a pull request!

License

MIT