Create and run event-driven apps that scale on demand

The IBM Functions serverless architecture accelerates development as a set of small, distinct, and independent actions. By abstracting away infrastructure, IBM Functions frees members of small teams to rapidly work on different pieces of code simultaneously, keeping the overall focus on creating user experiences customers want.

Connect actions into flexible, scalable sequences

IBM Functions is serverless, using business rules to bind events, triggers, and actions to each other. IBM Functions actions run automatically only when needed. Its serverless architecture promotes quickly, scalably creating and modifying action sequences to meet the evolving demands of mobile-driven user experience.

IBM Functions driving an Internet of Things business case

Skylink is an application that uses IBM Cloud Functions with the Cloudant, Alchemy, and Watson services to analyze and tag in realtime images captured by a drone.

Explore an open-ended ecosystem

Explore an open-ended ecosystem

IBM Functions provides an open ecosystem in which anyone can contribute their IBM Functions action code as building blocks to the expanding repository.

Speed and simplify development

Speed and simplify development

IBM Functions accelerates application development, which enables developers to quickly build apps with action sequences that execute in response to our event-driven world.

Leverage the benefits of cognitive services

Leverage the benefits of cognitive services

IBM Functions, by offering easy access to Watson APIs within the event-trigger-action workflow, makes cognitive analysis of application data inherent to your workflows.

Pay for what you actually use

Pay for what you actually use

It’s simple: pay for actual use rather than pre-allocated capacity. Costs increase only as you construct more IBM Functions-intensive solutions or as existing solutions scale to support bigger loads.

How it works

How do you build an application into IBM Functions?

IBM Functions works through rules that bind events and triggers to actions. Web and mobile applications often invoke IBM Functions actions directly through API calls via the mobile SDK. More commonly, Watson or other Bluemix services invoke IBM Functions actions by generating events to which IBM Functions actions respond.

How does IBM Functions operate?

When an event or an API call invokes an action, IBM Functions creates a container to run the action in a runtime appropriate to the programming language used. IBM Functions also can run custom-coded actions packaged in a Docker container.

How do you monitor performance?

Use the dashboard's graphical summary of IBM Functions actions to track their performance and health.

Use Case: Making Videos Searchable


Multiple programming languages

You can create IBM Functions actions in Node.js and Swift—within an expanding list of supported languages.

Asynchronous computing

IBM Functions uses publication/subscription message queues, making its triggers always-on and its triggered actions efficiently asynchronous. IBM Functions uses compute resources only when needed.

Action chaining

Building sequences of IBM Functions actions is language-independent. Gain the ability to connect microservices built by different teams to achieve desired business outcomes.

Integrated container support

IBM Functions actions run in Docker containers, making the risk of vendor lock-in irrelevant. Your team can also flexibly re-use legacy code in your IBM Functions actions.

Sign up for a Bluemix trial today

Sign up for a free 30-day trial and get access to explore any service you want and start building your web or mobile app.