See Getting Started.

Activate the conda workshop enviroment:

$ source activate workshop


We are going to use a WPS client.


  • You will learn how to use the Birdy WPS clients.
  • You can try an online demo with the Phoenix Web UI.


Birdy is a command-line client for Web Processing Services. It is using the Python library OWSLib to interact with WPS services.

Install it via conda:

$ conda install -c birdhouse -c conda-forge birdhouse-birdy owslib

Start the demo WPS service:

# go to the workshop root folder
$ cd ~/birdhouse-workshop/
# start wps service
$ python demo/


The WPS service is running in foreground. You need to open a new terminal and activate the conda workshop environment for the birdy WPS client.


You can also start the WPS service in background:

$ python demo/ -d

Remember the process id to kill the service:

forked process id: 16483

Let birdy know the WPS service URL:

$ export WPS_SERVICE=http://localhost:5000/wps


On Windows you can use:

$ set WPS_SERVICE=http://localhost:5000/wps

See which processes are available:

$ birdy -h
usage: birdy [<options>] <command> [<args>]

Show the description of say_hello:

$ birdy say_hello -h
usage: birdy say_hello [-h] --name [NAME]
                   [--output [{response} [{response} ...]]]

Run say_hello:

$ birdy say_hello --name Birdy
[ProcessAccepted 0/100] PyWPS Process say_hello accepted
[ProcessSucceeded 0/100] PyWPS Process Process Say Hello finished
response=Hello Birdy


On Windows the asynchronous call does not work, which birdy uses by default. Use the --sync option instead:

$ birdy --sync say_hello --name Birdy


Phoenix is Pyramid web-application to interact with WPS services.


You can try the online demo.

Exercise 1

Play with birdy … run the sleep process.

Exercise 2

Start the demo service with the processes from Testing and call the simple_plot process with birdy.

Exercise 3

Try some of the processes on the Phoenix demo. For example the wordcounter and the spotchecker.