Inline editor

The Dialogflow Console has a built-in code editor, called the inline editor that you can use to create fulfillment code and deploy the code to Cloud Functions. Cloud Functions has associated charges, but the service is free up to a significant number of monthly invocations. The inline editor only supports Node.js and uses the Dialogflow fulfillment library.

When you initially enable the inline editor, the fulfillment code is pre-populated with default handlers for default intents that are included for all agents. The code also has commented instructions for adding handlers for developer-defined intents.

The inline editor is intended for simple fulfillment testing and prototyping. Once you are ready to build a production application, you should create a webhook service.

Using the inline editor

The fulfillment quickstart has step-by-step instructions for using the inline editor.

Google Assistant

The inline editor does not support versioning for Cloud Functions. If you want to test varying logic with the Actions alpha/beta feature, you should:

  1. Turn off the inline editor using the Dialogflow Console.
  2. Deploy your code to Cloud Functions directly.
  3. Configure your custom webhook using the Dialogflow Console.

Download your code

Once you're ready to move your fulfillment code to another system, use the download button on the inline editor.

Network calls

Network calls originating from Cloud Functions code to destinations outside of Google's network are charged by the Cloud Functions service.


The following limitations apply:

  • If you modify your code with the Cloud Functions console, you can no longer use the inline editor to modify your code. Your function will continue to provide fulfillment for your agent, but future edits must be made in the Cloud Functions console.
  • The inline editor function must be named dialogflowFirebaseFulfillment.
  • You cannot save or download code modified in the inline editor without deploying it first.
  • The inline editor only supports two files:
    • index.js: Contains all of your fulfillment code.
    • package.json: Modifying this file will install any dependencies you specify upon deployment.