caymland-js

1.1.6 • Public • Published
Caymland

Javascript bindings to the Caymland REST API - https://api.m-4.ch/#rest-api

Built by Ultrasoft Systems

Installation

This client is intended for server side use only.

npm install caymland-js --save

Playground

You can play and watch everything working

node bin/playground.js

Usage

const Caymland = require('caymland-js')
const client = new Caymland({
  baseUrl: 'https://instance.caymland.app',
  auth: {
    username: 'username',
    password: 'password'
  }
})

Resources


Contact

// Get contact by id
const response = await client.contacts.get(contactId)
// List contacts
const response = await client.contacts.list()
// List contacts with a search
const response = await client.contacts.list({ search: 'john.doe@caymland.com' })
// Create contact
const response = await client.contacts.create({
  firstname: 'John',
  lastname: 'Doe',
  email: 'john.doe@caymland.com',
  owner: 1
})
// Delete contact
const response = await client.contacts.delete(contactId)
// Edit contact
const response = await client.contacts.edit(contactId, {
  firstname: 'John',
  lastname: 'Doe',
  email: 'john.doe@caymland.com',
  owner: 1
})
// If the given id exists, clear all contact info and push with new ones, if not, create a contact
const response = await client.contacts.editOrCreate(contactId, {
  firstname: 'John',
  lastname: 'Doe',
  email: 'john.doe@caymland.com',
  owner: 1
})
// Add points to a contact
const response = await client.contacts.addPoints(contactId, 10)
// Remove points of a contact
const response = await client.contacts.subtractPoints(contactId, 10)
// Get notes
const response = await client.contacts.getNotes(contactId)
// Get Activity Events
const response = await client.contacts.getActivityEvents(contactId)
// Get Companies of a contact
const response = await client.contacts.getCompanies(contactId)
// Add UTM tags
const response = await client.contacts.addUTMTags(contactId, {
  utm_campaign: 'utm campaign tag',
  utm_source: 'utm source tag',
  utm_medium: 'utm medium tag',
  utm_content: 'utm content tag',
  utm_term: 'utm term tag'
})
// Remove UTM tag
const response = await client.contacts.removeUTMTags(contactId, utmId)
// List segments of a contact
const response = await client.contacts.listSegments(contactId)

Segment

// Add contact to segment
const response = await client.segments.addContact(1, 2) // segmentId, contactId
// Remove contact of segment
const response = await client.segments.removeContact(1, 2) // segmentId, contactId

Company

// Get company by id
const response = await client.companies.get(1) // companyId
// List companies
const response = await client.companies.list({
  name: 'Field Control'
})
// Create a company
const response = await client.companies.create(2) // company
// Edit a company
const response = await client.companies.edit(1, 2) // companyId, company
// If the given id exists, clear all company info and push with new ones, if not, create a company
const response = await client.companies.editOrCreate(1, 2) // companyId, company
// Delete a company
const response = await client.companies.delete(1) // companyId
// Add a contact to a company
const response = await client.companies.addContact(1, 2) // companyId, contactId
// Remove a contact of a company
const response = await client.companies.removeContact(1, 2) // companyId, contactId

Users

// Get user by id
const response = await client.users.get(1)
// List users
const response = await client.users.list(1)
//Get the logged in user
const response = await client.users.getSelf()

Readme

Keywords

none

Package Sidebar

Install

npm i caymland-js

Weekly Downloads

0

Version

1.1.6

License

MIT

Unpacked Size

24.9 kB

Total Files

20

Last publish

Collaborators

  • nsaloski