@orbit-love/activities

Orbit API client for Node.js. API support for activity and note operations.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
@orbit-love/activities
150.2.0a year agoa year agoMinified + gzip package size for @orbit-love/activities in KB

Readme

Orbit Activities Helper Library for Node.js
Build Status npm version Contributor Covenant
Orbit API helper library for Node.js.
This client can create, read, update and delete activities in your Orbit workspace.

Orbit

Installation

npm install @orbit-love/activities

Constructor

const OrbitActivities = require('@orbit-love/activities')
const orbitActivities = new OrbitActivities(orbitWorkspaceId, orbitApiKey)

  • orbitWorkspaceId - The part of your Orbit workspace URL that immediately follows the app.orbit.love. For example, if the URL was https://app.orbit.love/my-workspace, then your Orbit workspace ID is my-workspace.
  • orbitApiKey - This can be found in you Orbit Account Settings.

Initializing with environment variables

If you have the environment variables ORBIT_WORKSPACE_ID and ORBIT_API_KEY set, you can initialize the client like so:
const OrbitActivities = require('@orbit-love/activities')
const orbitActivities = new OrbitActivities()

If you have environment variables set and also pass in values, the passed in values will be used.

Rate Limits & Page Sizes

Activity Methods

listWorkspaceActivities(options)
const options = {
    page: 1,
    items: 50,
    company: 'ACME Corp'
}

orbitActivities.listWorkspaceActivities(options).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

options is not a required parameter, but can be any query parameter shown in our API reference.
List activities for a workspace API reference.
listMemberActivities(memberId, options)
const memberId = 'janesmith04'

const options = {
    page: 1,
    items: 50
}

orbitActivities.listMemberActivities(memberId, options).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

options is not a required parameter, but can be any query parameter shown in our API reference.
List activities for a member API reference.
getLatestActivityTimestamp(activityType)
const activityType = 'issued:opened'

orbitActivities.getLatestActivityTimestamp(activityType).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

Will return the timestamp of the latest activity with the provided type, or null if there are none.
getActivity(activityId)
const activityId = '1234536'

orbitActivities.getActivity(activityId).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

Get an activity in the workspace API reference.
createActivity(memberId, data) or createActivity(data)
If you know the memberId for the member you want to add the activity to:
const memberId = 'janesmith04'

const data = {
    activity_type: 'starfleet:signup',
    title: "New Planet Signed Up for Starfleet",
    description: "Klingon has joined Starfleet via Twitter",
    member: {
        tshirt: 'XL',
        twitter: 'qunnoq'
    }
}

orbitActivities.createActivity(memberId, data).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

data should match the body params as shown in the Create a post activity for a member API reference.
If you know one or more identities of the member (github, email, twitter, etc.) but not their Orbit ID:
const data = {
    activity_type: 'starfleet:signup',
    title: "New Planet Signed Up for Starfleet",
    description: "Klingon has joined Starfleet via Twitter",
    member: {
        tshirt: 'XL',
        twitter: 'qunnoq'
    }
}

orbitActivities.createActivity(data).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

data should match the body params as shown in the Create an activity for a new or existing member API reference.

updateActivity(memberId, activityId, data)
const memberId = 'janesmith04'
const activityId = '1234356'
const data: {
    description: 'New description'
}

orbitActivities.updateActivity(memberId, activityId, data).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

data should match the body params as shown in the Update a custom activity for a member API reference.
deleteActivity(memberId, activityId)
const memberId = 'janesmith04'
const activityId = '1234356'

orbitActivities.deleteActivity(memberId, activityId).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

Delete a post activity API reference.

Note Methods

listMemberNotes(memberId, options)
const memberId = 'janesmith04'
const options = {
    page: 1
}

orbitActivities.listMemberNotes(memberId, options).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

options is not a required parameter, but can be any query parameter shown in our API reference.
Get the member's notes API reference.
createNote(memberId, body)
const memberId = 'janesmith04'
const body = 'Had a really excellent interview with Jane today.'

orbitActivities.createNote(memberId, body).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

Create a note API reference.
updateNote(memberId, noteId, body)
const memberId = 'janesmith04'
const noteId = '12345'
const body = 'Had a really excellent interview with Jane today. Here is some more info.'

orbitActivities.updateNote(memberId, noteId, body).then(data => {
    console.log(data)
}).catch(error => {
    console.error(error)
})

Update a note API reference.

Contributing

We 💜 contributions from everyone! Check out the Contributing Guidelines for more information.

License

This is available as open source under the terms of the MIT License.

Code of Conduct

This project uses the Contributor Code of Conduct. We ask everyone to please adhere by its guidelines.