@zenginehq/backend-http

3.2.1 • Public • Published

Backend HTTP

Helper module for working with znHttp in Zengine backend Plugins.

Coverage Status Build Status npm version

Installation

npm i @zenginehq/backend-http

Usage

Bulk fetching records

var $api = require('@zenginehq/backend-http')();

// Example Response success and failure handlers.
znHttp().get(path)
  .then($api.formatResponse)
  .then(data => {
    // data will be the Zengine object(s) you requested without all the metadata distractions
  })
  .catch($api.errHandler);

// Fetch *all* records across multiple pages if available, with any special parameters included in the second arg.
$api.fetchBatched(path, { limit: 100, 'not-field123': 'some value' })
  .then(results => {
    console.log(results.length);
  });

Record CRUD

// Load an existing record.
$api.getRecord(formId, recordId).then(record => {
	// do something with `record`
});

// Update an existing record.
// data should be a single object.
// options should be an object and can include specific headers and a specific amount of retry attempts.
// delay should be provided in milliseconds.
// options and delay are optional.
$api.updateRecord(formId, recordId, data, options, delay);

// Query form records.
// options should be an object and can include a results limit, sorting options, and a Zengine filter.
$api.queryRecords = (formId, options);

// Delete an existing record.
$api.deleteRecord(formId, recordId);

// Create a new record. data can be an array of objects or a single object
$api.createRecord(formId, data).then(recordId => {
  // the record ID(s) from the successful create (or update) operation.
  // Important: it will always be the ID(s), not the entire record(s)
});

// Move a record to a folder.
$api.moveRecord(formId, recordId, folderId);

Special Note To update multiple records on the same form, use the createRecord method and include the IDs of each object to ensure they are updated, rather than having new records created.

Other convenience methods

// Loads an activity by id, useful for working with webhooks.
const activity = await $api.getActivity(activityId);

// Loads a form by id.
const form = await $api.getForm(formId);

API Docs

Full documentation

Readme

Keywords

Package Sidebar

Install

npm i @zenginehq/backend-http

Weekly Downloads

1

Version

3.2.1

License

MIT

Unpacked Size

1.11 MB

Total Files

44

Last publish

Collaborators

  • chris.manjoine
  • dwmcnelis-wizehive
  • wizehive-jeremyf