There is a RESTful API for opsdroid which by default is only accessible to localhost on port 8080. See the configuration reference for config options.


/ [GET]

A test url you can use to check whether the API is running.

Example response

  "message": "Welcome to the opsdroid API"

/stats/ [GET]

This method returns runtime statistics which could be useful in monitoring.

Example response

  "version": "0.6.0",
  "messages": {
    "total_parsed": 164,
    "webhooks_called": 28,
    "total_response_time": 0,
    "total_responses": 108,
    "average_response_time": 0.62794
  "modules": {
    "skills": 13,
    "connectors": 1,
    "databases": 0

/skill/{skillname}/{webhookname} [POST]

This method family will call skills which have been decorated with the webhook matcher. The URI format includes the name of the skill from the configuration.yaml and the name of the webhook set in the decorator.

The response includes information on whether a skill was successfully triggered or not.

Example response

  "called_skill": "examplewebhookskill"