Skip to content


Subversion checkout URL

You can clone with
Download ZIP
JavaScript wrapper for the Etherpad Lite API
Latest commit 6a95d76 @tomassedovic Merge pull request #13 from ypid/latest_api_level
Updated to latest API level 1.2.12.


Etherpad Lite API

Supports all the API calls described in the Etherpad Lite API page.


You can install it via NPM:

$ npm install etherpad-lite-client

or add it to your package.json dependencies:

"etherpad-lite-client": "0.7.x"


api = require('etherpad-lite-client')
etherpad = api.connect({
  apikey: 'UcCGa6fPpkLflvPVBysOKs9eeuWV08Ul',
  host: 'localhost',
  port: 9001,

etherpad.createGroup(function(error, data) {
  if(error) console.error('Error creating group: ' + error.message)
  else console.log('New group created: ' + data.groupID)

Certain API calls require that you pass some arguments:

var args = {
  groupID: 'g.yJPG7ywIW6zPEQla',
  padName: 'testpad',
  text: 'Hello world!',
etherpad.createGroupPad(args, function(error, data) {
  if(error) console.error('Error creating pad: ' + error.message)
  else console.log('New pad created: ' + data.padID)

Callback & Returned Data

The callback function should look like this:

function(error, data) {
  if(error) {
    // handle error using error.code and error.message

  // some code

The callback function takes two argument: error and data.


error is null if everything is fine. Otherwise it's a JavaScript object that describes what's wrong.

It has two attributes: code and message:

  • error.code
    • 1 wrong parameters
    • 2 internal error
    • 3 no such function
    • 4 no or wrong API Key
    • -1 there was problem with calling Etherpad API
  • error.message: a text representation of the error


data is a JavaScript object from the Etherpad response or null (on error).


This code is released under the MIT (Expat) license.

See the attached file LICENSE.txt for more details or visit:

Something went wrong with that request. Please try again.