Skip to main content

PyBossa command line client

Project description

Travis CI Coverage Status Downloads License

PBS - a PyBossa command line interface

pbs is a very simple command line interface to a PyBossa server. It allows you to create projects, add tasks (from a CSV or JSON file) with a nice progress bar, delete them and update the project templates (tutorial, task_presenter, and descriptions) all from the command line.


pbs is available in Pypi, so you can install the software with pip:

pip install pybossa-pbs

If you have all the dependencies, the package will be installed and you will be able to use it from the command line. The command is: pbs.

If you want to hack on the code, just install it but with the –editable flag after cloning the repository:

git clone
cd pbs
virtualenv env
source env/bin/activate
pip install --editable .

This will install the pbs package, and you’ll be able to modify it, patch it, etc. If you improve it, please, let us know and share the code so we can integrate it back ;-)

Configuring pbs

pbs is very handy when you work with one or two PyBossa servers. The best way to configure it is creating a simple config file in your home folder:

cd ~
vim .pybossa.cfg

The file should have the following structure:

apikey: yourkey

If you are working with more servers, add another section below it. For example:

apikey: yourkey

apikey: yourkeyincrowdcrafting

By default pbs will use the credentials of the section default, so you don’t have to type anything to use those values. However, if you want to do actions in the other server all you have to do is the following:

pbs --credentials crowdcrafting --help

That command will use the values of the crowdcrafting section.

Creating a project

Creating a project is very simple. All you have to do is create a file named project.json with the following fields:

    "name": "Flickr Person Finder",
    "short_name": "flickrperson",
    "description": "Image pattern recognition",
    "question": "Do you see a real human face in this photo?"

If you use the name project.json you will not have to pass the file name via an argument, as it’s the named used by default. Once you have the file created, run the following command:

pbs create_project

That command should create the project. If you want to see all the available options, please check the –help command:

pbs create_project --help

Adding tasks to a project

Adding tasks is very simple. You can have your tasks in two formats:

  • JSON
  • CSV

Therefore, adding tasks to your project is as simple as this command:

pbs add_tasks --tasks-file tasks_file.json --tasks-type=json

If you want to see all the available options, please check the –help command:

NOTE: By default PyBossa servers use a rate limit for avoiding abuse of the API. For this reason, you can only do usually 300 requests per every 15 minutes. If you are going to add more than 300 tasks, pbs will detect it and warn you, auto-enabling the throttling for you to respect the limits.

pbs add_tasks --help

Updating project templates

Now that you have added tasks, you can work in your templates. All you have to do to add/update the templates to your project is running the following command:

pbs update_project

That command needs to have in the same folder where you are running it, the following files:

  • template.html
  • tutorial.html

If you want to use another template, you can via arguments:

pbs update_project --template /tmp/template.html

If you want to see all the available options, please check the –help command:

pbs update_project --help

Deleting tasks from a project

If you need it, you can delete all the tasks from your project, or only one using its For deleting all the tasks, all you’ve to do is run the following command:

pbs delete_tasks

This command will confirm that you want to delete all the tasks and associated task_runs.

If you want to see all the available options, please check the –help command:

pbs delete_tasks --help


You have more documentation, with real examples at

Check the tutorial as it uses pbs, and also its pbs section in the site.

Project details

Release history Release notifications

History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


This version
History Node


History Node


History Node


History Node


History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pybossa-pbs-1.4.tar.gz (11.6 kB) Copy SHA256 hash SHA256 Source None Jul 8, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page