Although you can build complete agents in API.AI, you still need to use external sources for backend tasks that the chatbot is supposed to perform. Backend tasks are the tasks that the chatbot will perform behind the scenes while having a conversation with the user. These can range from making a record of the conversation in the CRM, to identifying a lead, to querying the database for information requested by the user. This is called fulfillment.
An example of fulfillment in a travel planning chatbot would be to query the database to check and retrieve whether there are flights available for a given date, the to and from source, and destination cities. This task will be fulfilled by a web app that can be called by the chatbot ...