How to enable the Jibri HTTP API

When I’ve set up a new jibri node, I can’t seem to access the HTTP API, the one defined here: jibri/http_api.md at master · jitsi/jibri · GitHub

Once you have it on, you can see the health and status of your recorder using
http://domain-name:2222/jibri/api/v1.0/health

On a box where it is working, I can do:
sudo lsof -i:2222
and get

COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    1210 jibri   32u  IPv6  26781      0t0  TCP *:2222 (LISTEN)

But on the node I have set up now it’s not listening on that port. It’s fine that it’s on http.
In the jibri.conf, I also have:

 api {
    http {
      external-api-port = 2222
      internal-api-port = 3333
    }

Lastly, I can also get the health information from on the box itself with:
wget localhost:2222/jibri/api/v1.0/health

Turns out if you have done all of the above, you can be certain it’s working - I had disabled the server while checking the above at some point :slight_smile:

So a good post setup test is to try curl/wgetting the api on your local box to confirm it’s ready.

The last thing to troubleshoot if you still have trouble, is to open your firewall if needed:

sudo ufw allow 2222/tcp