appetizer v0.0.2
Appetizer
A Node.js REST based API client for Appetize.io.
Installation
The API client is released to the public npm registry and can be installed.
npm install --save appetizerPart of the Appetizer suite
This module is part of a larger suite of components that work excellent with each other. If you liked this module we highly suggest checking out:
- appetizer A Node.js component for interacting with the Appetize.io API.
- appetizer-bundle Prepares and packs your React-Native application for uploading to Appetize.io.
- appetizer-component A React Component to embed your uploaded application.
API
const Appetizer = require('appetizer');
const app = new Appetizer({ opts });The following opts are supported:
keyrequired The API key, which is required to use the library.versionVersion number of the API we're communicating with, defaults tov1endpointLocation of the API we're hitting.
Once you've created your own appetizer API instance you can use the following
methods:
create
Create a new application, you can either point to a pre-uploaded application so
the API can download it, or specify a file property in the data as
ReadableStream or Buffer and upload that with the API call.
app.create({
url: 'https://url.com/path/to/app.zip'
}, function (err, data) {
if (err) {
// Handle errors
}
});See official API docs for accepted fields
update
Update an existing application with new details. First argument should be the
public_id of the application you want to update, second argument the data that
needs to be changed.
app.update(public_id, {
url: 'https://url.com/path/to/app.zip',
note: 'Hello'
}, function (err, data) {
if (err) {
// Handle errors
}
});See official API docs for accepted fields
remove
Remove a uploaded application. First argument is the public_id of the
application you wish to remove.
app.remove(public_id, function (err) {
if (err) {
// Handle errors
}
});list
List all uploaded applications.
app.usage(function (err, data) {
if (err) {
// Handle errors
}
});See more to list more applications. See official API docs for accepted fields
more
There can be more applications created than the list API can return. In
that case the data will have a hasMore property set to true and a nextKey
property. If you want to retrieve more applications, pass the nextKey in to
the more API to retrieve the next batch of applications.
app.more('adf8a09sdf8a098af', function (err) {
if (err) {
// Handle errors
}
});usage
Get usage statistics of applications.
app.usage(function (err, data) {
if (err) {
// Handle errors
}
});Testing
There are 2 sets of tests in this project. Normal unit tests that are ran using:
npm testAnd a set of integration tests which requires you to have an API key to the appetize.io service so we can verify that we've integrated the API's correctly. These are run using:
API=your-api-key-here npm run integration