Save the date! Join us on October 16 for our Product Ops launch event. Register here.
May 26, 2018 12:50 AM
I am trying to use Airtable to fulfill Dialogflow requests. I have limited coding knowledge. Wondering if there is anyone who has got this to work? This thread seems to imply it is possible - Create Slackbot for Airtable Lookup.
May 26, 2018 01:47 AM
I assume you are wanting to have the data stored on your base on Airtable, accessed via Dialogflow?
You would probably want to use some third party service like Zapier to have both Airtable and Dialogflow interact with each other.
If in case such a third party does not exist which supports both Airtable and Dialogflow, your only other option is to write up some code and build this integration yourself.
The API docs provided by Airtable are pretty helpful and you might want to have a look at that.
Jun 05, 2018 07:02 AM
Thanks for the advice. I eventually found a web app called Integromat which did the linking.
Tomas
Aug 20, 2018 05:39 AM
Hi @Tomas_Millar, would you share the settings of your scenario and how you manage the request from Diagloflow?
Aug 20, 2018 06:08 AM
In Integromat you create a webhook and follow the instructions to link this to your Dialogflow chatbot.
You need to enable Webhook under the fulfillment tab in dialogflow and paste the URL supplied by integromat when you were setting up the webhook.
You also need to “enable webhook call for this intent” in the individual Dialogflow intents.
You then need to send some sample data to Integromat to interpret the data structure. You trigger this process from Integromat.
Link Airtable to Integromat using the built in integration.
setup whatever processing you need.
7 communicate back to Integromat using a “webhook response” node. You need to fill in the custom headers as shown in the attached image. You also need to make sure you format the JSON file back to Dialogflow according to the Dialogflow Fulfillment formatting and fields - https://dialogflow.com/docs/fulfillment
I hope that is enough to get you started. I might try and do a video tutorial at some point.
Tomas
Aug 20, 2018 07:20 AM
Thank you VERY MUCH!
Sep 15, 2019 08:51 AM
This is really cool. I was wondering if you ever decided to make a video tutorial?
Sep 16, 2019 09:09 AM
Unfortunately not yet…
Mar 20, 2020 09:49 AM
Hi Tomas, very interesting!
I’m stuck in how can I make the webhook response available as dialogflow response in the conversation.
Thanks in advance for your help
Giancarlo
Mar 23, 2020 08:33 PM
So you do need a tad bit of coding knowledge for the response, just search for Webhook Response in the dialogflow help documents. For some reason it won’t let me post a link.
If gives you a pretty good idea of what DialogFlow is looking for in their response.
{
"fulfillmentText": "This is a text response",
"fulfillmentMessages": [
{
"card": {
"title": "card title",
"subtitle": "card text",
"imageUri": "https://example.com/images/example.png",
"buttons": [
{
"text": "button text",
"postback": "https://example.com/path/for/end-user/to/follow"
}
]
}
}
],
"source": "example.com",
"payload": {
"google": {
"expectUserResponse": true,
"richResponse": {
"items": [
{
"simpleResponse": {
"textToSpeech": "this is a simple response"
}
}
]
}
},
"facebook": {
"text": "Hello, Facebook!"
},
"slack": {
"text": "This is a text response for Slack."
}
},
"outputContexts": [
{
"name": "projects/project-id/agent/sessions/session-id/contexts/context-name",
"lifespanCount": 5,
"parameters": {
"param-name": "param-value"
}
}
],
"followupEventInput": {
"name": "event name",
"languageCode": "en-US",
"parameters": {
"param-name": "param-value"
}
}
}