"UbiFunctions" is a serverless computing environment for the IoT. Also known as FaaS (Functions as a Service), it enables you to run custom functions on-demand, directly from Ubidots.
Although originally designed as a custom decoding tool, it has grown into an integration and analytics powerhouse.
An UbiFunction is user-defined NodeJS or Python code that runs on-demand, and can be invoked using any of these methods:
- Making an HTTP GET or POST request to the UbiFunction’s URL
- Publishing data through MQTT to the UbiFunction's URL
- Configuring an Ubidots event action
- A time-trigger specified by the user
UbiFunctions are commonly user among our customer base to:
- Extract data from 3rd party APIs and insert it into Ubidots
- Customize your own HTTP API Gateway to receive data in a custom format
- Extract data from Ubidots itself, run a custom analysis or transformation, and insert the results back into Ubidots.
This module is available to all of our Professional plan customers and above. To upgrade to a Professional plan:
- 1.Select "My Profile" from the user drop-down located in the top-right of your Admin App.
- 2.Select "Billing" from the left-hand navigation panel.
- 3.Click on "Change plan" option, then select the "Professional" plan or above.
- 4.Click "Update Plan" to save your upgrade and activate UbiFunctions.
The UbiFunctions module includes a limited amount of executions, and is charged on a per-usage basis:
- Includes 1 thousand executions per month
- When an execution surpasses 2 seconds, it is counted as 2 or more executions, at 2-seconds increments.
- Executions are billed at $5 per million executions.