Table of Contents

Dialogflow: Fulfillment Webhook Request

Susan Swier Updated by Susan Swier

If you are building a Dialogflow Agent that uses Dialogflow Fulfillment extensively, you will find the data passed by the channel provider useful for your application. This data is passed from the respond.io platform to Dialogflow using the originalDetectIntentRequest field.

Contact Object

To allow for more advanced use cases of the API, the Contact object is appended to the request by the platform. The cId item in the Contact object reflects the same value used in the Contacts API.

    "contact": {
"cId": "60133386712",
"contactId": 123456,
"channelId": 7890
}

Facebook

"originalDetectIntentRequest": {
"payload": {
"source": "facebook",
"contact": {
"cId": "3854977680200098",
"contactId": "123456",
"channelId": "7890"
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"entry": [
{
"messaging": [
{
"recipient": {
"id": "177689475607202"
},
"message": {
"text": "hi",
"mid": "D3DJuA0YlOgDgOybFG1M2ZHoJg9hq9IAjMQE2ps6RIN4QJ25rNPMi"
},
"timestamp": 1564743055901,
"sender": {
"id": "2254108171328398"
}
}
],
"id": "177689475607202",
"time": 1564743056313
}
],
"object": "page"
}
}
}

LINE

"originalDetectIntentRequest": {
"payload": {
"source": "line",
"contact": {
"cId": "U905251b5f5759acde5e4788681c04269",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"events": [
{
"type": "message",
"replyToken": "16a59224c65b4c5cbecedc4f3504599b",
"source": {
"userId": "U905251b5f5759bbde5e4788681c04170",
"type": "user"
},
"timestamp": 1593146060317,
"mode": "active",
"message": {
"type": "text",
"id": "12211455206333",
"text": "Hi"
}
}
],
"destination": "U5698920083824716136c04633a9e1710"
}
}
}

SMS - Twilio

"originalDetectIntentRequest": {
"payload": {
"source": "twilio",
"contact": {
"cId": "+12262120005",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"ToCountry": "CA",
"ToState": "Ontario",
"SmsMessageSid": "SM1f1c9a30ff67cf5b1a89d5b1e0735a2b",
"NumMedia": "0",
"ToCity": "",
"FromZip": "",
"SmsSid": "SM1f1c9a30ff67cf5b1a89d5b1e0735a2b",
"FromState": "Ontario",
"SmsStatus": "received",
"FromCity": "St Thomas",
"Body": "Hi",
"FromCountry": "CA",
"To": "+12267022870",
"ToZip": "",
"NumSegments": "1",
"MessageSid": "SM1f1c9a30ff67cf5b1a89d5b1e0735a2b",
"AccountSid": "AC75bcf6cd15a35c46c6e5fa6d6dde6028",
"From": "+12262121015",
"ApiVersion": "2010-04-01"
}
}
}

SMS - MessageBird

"originalDetectIntentRequest": {
"payload": {
"source": "message_bird",
"contact": {
"cId": "16364923690"
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"body": "Hi",
"createdDatetime": "2020-06-26T07:51:30+00:00",
"date": "1593186690",
"date_utc": "1593157890",
"id": "6c4c8c58eb204e69ae7d07e309c5a11c",
"invocationId": "477a8bc9-a4ec-45db-98e0-3b982898945a",
"message": "Hi",
"message_id": "026a4c0e38954e5684757ba1de645130",
"originator": "12267022870",
"payload": "Hi",
"receiver": "12262121015",
"recipient": "12262121015",
"reference": "88003423322",
"sender": "12267022870"
}
}
}

SMS - Vonage

"originalDetectIntentRequest": {
"payload": {
"source": "nexmo",
"contact": {
"cId": "60133386712"
},
"body": {
"msisdn": "12012938397",
"to": "12012938397",
"messageId": "16000002AB5DBF42",
"text": "Hi",
"type": "text",
"keyword": "HI",
"api-key": "2787fb30",
"message-timestamp": "2020-04-27 09:00:08"
}
}
}

Telegram

"originalDetectIntentRequest": {
"payload": {
"source": "telegram",
"contact": {
"cId": "928825753",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"update_id": 68062810,
"message": {
"message_id": 358,
"from": {
"id": 921815852,
"is_bot": false,
"first_name": "Leo",
"language_code": "en"
},
"chat": {
"id": 921815852,
"first_name": "Leo",
"type": "private"
},
"date": 1593415824,
"text": "Hi"
}
}
}
}

Twitter

"originalDetectIntentRequest": {
"payload": {
"source": "twitter",
"contact": {
"cId": "800244779787258095",
"contactId": 123456,
"channelId": 7890
},
"body": {
"for_user_id": "800244779786258096",
"direct_message_events": [
{
"type": "message_create",
"id": "1277881813680091140",
"created_timestamp": "1593505740934",
"message_create": {
"target": {
"recipient_id": "800244779786258096"
},
"sender_id": "1236829623670812661",
"message_data": {
"text": "Hi",
"entities": {
"hashtags": [],
"symbols": [],
"user_mentions": [],
"urls": []
}
}
}
}
],
"users": {
"1236829623670812661": {
"id": "1236829623670812661",
"created_timestamp": "1583718145786",
"name": "leoawesome",
"screen_name": "leoawesome21",
"protected": false,
"verified": false,
"followers_count": 0,
"friends_count": 1,
"statuses_count": 0,
"profile_image_url": "http://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png",
"profile_image_url_https": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png"
},
"800244779786258096": {
"id": "800244779786258096",
"created_timestamp": "1479628198125",
"name": "respond.io",
"screen_name": "respond_io",
"description": "https://t.co/8AN2CVzhwJ is a business messaging platform that connects customers from any channel to every team.",
"url": "https://t.co/vE593YRZwo",
"protected": false,
"verified": false,
"followers_count": 246,
"friends_count": 23,
"statuses_count": 1527,
"profile_image_url": "http://pbs.twimg.com/profile_images/1250330944067653632/3KiCeUhc_normal.jpg",
"profile_image_url_https": "https://pbs.twimg.com/profile_images/1250330944067653632/3KiCeUhc_normal.jpg"
}
}
}
}
}

Viber

"originalDetectIntentRequest": {
"payload": {
"source": "viber",
"contact": {
"cId": "T1yTBK3PQTHAFchsDh1skA==",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"event": "message",
"timestamp": 1593420787910,
"chat_hostname": "BN-CHAT-14_",
"message_token": 5458312086267550000,
"sender": {
"id": "T1yTBK3PQFGAGdhsDh1skA==",
"name": "Leo",
"avatar": "https://media-direct.cdn.viber.com/download_photo?dlid=tHBOJafTJ8WSwoFLCQ0x1lmS8RXeDXXyUVoAoLmmOGPIMprwqNCUO6BH3cG-VoAYd3WetLrBK4nP7C86ZN3MxG5T40A1lduzChAts-ULz0oO9l7FjW3bAYljiLyTGkYbaCRjcQ&fltp=jpg&imsz=0000",
"language": "en",
"country": "MY",
"api_version": 8
},
"message": {
"text": "Hi",
"type": "text"
},
"silent": false
}
}
}

WeChat

"originalDetectIntentRequest": {
"payload": {
"source": "wechat",
"contact": {
"cId": "ovYOJv8eZlJ5efKToATGeOk5hBQM",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"xml": {
"ToUserName": [
"gh_5b17802cd972"
],
"FromUserName": [
"ovYOJv8eZlJ5evMToATGePk5hAQM"
],
"CreateTime": [
"1593421765"
],
"MsgType": [
"text"
],
"Content": [
"Hi"
],
"MsgId": [
"22812312807562437"
]
}
}
}
}

Webchat

"originalDetectIntentRequest": {
"payload": {
"source": "webchat",
"contact": {
"cId": "e6507476-e507-4503-9652-bcde24e8ea88",
"contactId": 123456,
"channelId": 7890
},
"body": {
"sender": {
"id": "07f1e397-12a8-485b-a417-14d7e3837608",
"locale": "en_US"
},
"recipient": {
"id": "4db00a5db70efbb51a0cd6a6635918390dd1945a89ce77898ab66b82d5c15344"
},
"query": [
{
"type": "query",
"text": "Hi"
}
]
}
}
}

WhatsApp - Twilio

"originalDetectIntentRequest": {
"payload": {
"source": "twilio_whatsapp",
"contact": {
"cId": "whatsapp:+60133385703",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"SmsMessageSid": "SMb16231017683857d42ca62aafabcf205",
"NumMedia": "0",
"SmsSid": "SMb16231017683857d42ca62aafabcf205",
"SmsStatus": "received",
"Body": "Hi",
"To": "whatsapp:+14155238886",
"NumSegments": "1",
"MessageSid": "SMb16231017683857d42ca62aafabcf205",
"AccountSid": "AC75bcf6cd15a35c46c6e5fa6d6dde6028",
"From": "whatsapp:+60144486813",
"ApiVersion": "2010-04-01"
}
}
}

WhatsApp - MessageBird

"originalDetectIntentRequest": {
"payload": {
"source": "message_bird_whatsapp",
"contact": {
"cId": "60133385712",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"contact": {
"attributes": {},
"createdDatetime": "2020-05-18T03:02:01Z",
"customDetails": {},
"displayName": "60123376813",
"firstName": "",
"href": "https://contacts.messagebird.com/v2/contacts/32845951f19c43d0b4e3371df0da941a",
"id": "32845951f19c43d0b4e3371df0da941a",
"lastName": "",
"msisdn": 60123376813,
"updatedDatetime": "2020-05-18T03:02:01Z"
},
"conversation": {
"contactId": "32845951f19c43d0b4e3371df0da941a",
"createdDatetime": "2020-05-18T03:02:01Z",
"id": "64d59ed4cb4f419ca39114c292c1a597",
"lastReceivedDatetime": "2020-06-26T08:58:55.7451283Z",
"status": "active",
"updatedDatetime": "2020-06-25T08:59:30.877791342Z"
},
"message": {
"channelId": "f4b115e89415407ab2b97fe85ad3d191",
"content": {
"text": "Hi"
},
"conversationId": "64d59ed4cb4f419ca39114c292c1a597",
"createdDatetime": "2020-06-26T08:58:55Z",
"direction": "received",
"from": "+60123376813",
"id": "91c8268bb72b412cab3b4080a974c5dc",
"platform": "whatsapp",
"status": "received",
"to": "+6531290788",
"type": "text",
"updatedDatetime": "2020-06-26T08:58:55.750324338Z"
},
"type": "message.created"
}
}
}

WhatsApp - Vonage

"originalDetectIntentRequest": {
"payload": {
"source": "nexmo_whatsapp",
"contact": {
"cId": "60133386712",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"message_uuid": "2b53f909-1640-471f-a44d-e4cb9bd00c44",
"to": {
"type": "whatsapp",
"number": "12012938397"
},
"from": {
"type": "whatsapp",
"number": "60133285813"
},
"timestamp": "2020-06-29T04:37:21.876Z",
"message": {
"content": {
"type": "text",
"text": "Hi"
}
},
"direction": "inbound"
}
}
}

WhatsApp - Chat API

"originalDetectIntentRequest": {
"payload": {
"source": "whatsapp",
"contact": {
"cId": "60132385803@c.us",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"messages": [
{
"id": "false_60133376613@c.us_4A4AE5DAA5601F0560C45E46C16186FE",
"body": "Hi",
"fromMe": false,
"self": 0,
"isForwarded": 0,
"author": "60133376613@c.us",
"time": 1593491156,
"chatId": "60133376613@c.us",
"messageNumber": 155,
"type": "chat",
"senderName": "Leo",
"caption": null,
"quotedMsgBody": null,
"quotedMsgId": null,
"chatName": "Leo"
}
],
"instanceId": "144708"
}
}
}

WhatsApp 360 Dialog v1

"originalDetectIntentRequest": {
"payload": {
"source": "message_pipe_whatsapp",
"contact": {
"cId": "60133386712",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"environment": {
"app_id": "476"
},
"events": [
{
"name": "d360_whatsapp_message_in",
"properties": {
"stack_id": "85256128299",
"message_id": "IY2Cx8lhx0E0M",
"conversation_id": "K7SWYeCmed07C",
"type": "text",
"content": {
"body": "Hi"
}
},
"timestamp": "1593502341000",
"id": "7a104e27-d4d2-4e5d-8c8a-c74f3ba8e6c1"
}
],
"device": {
"mdn": "60133286713",
"profile_name": "Leo"
},
"recipient_id": "64f0699c-e005-409d-b177-6a975c61ba60"
}
}
}

WhatsApp 360 Dialog v2

"originalDetectIntentRequest": {
"payload": {
"source": "360dialog_whatsapp",
"contact": {
"cId": "60133386712",
"contactId": 123456,
"channelId": 7890
},
"attachments": [
{
"type": "location",
"payload": {
"lat": 3.146642,
"long": 101.695847,
"address": "Kuala Lumpur City Center"
}
}
],
"body": {
"contacts": [
{
"profile": {
"name": "John Don"
},
"wa_id": "923339883320"
}
],
"messages": [
{
"from": "923339885509",
"id": "ABEGkjM5iFUJAhDGiqsifkiyZkH6HzvBfO2m",
"text": {
"body": "Hi"
},
"timestamp": "1595240228",
"type": "text"
}
]
}
}
}

Troubleshooting

Payload is not supported

Any unsupported payloads, e.g., Google Assistant cards, will not appear on the platform and will be ignored by respond.io.

Incorrect payload format

Payload formats are strict and any missing key values would result in undesirable results, i.e., not appearing on the platform, appearing incorrectly, etc.

Time latency more than 5 seconds

If you have a complex fulfillment criteria, e.g., connecting to some third-party service that does queries before returning a response, then you must consider the time latency as described in the Dialogflow documentation here. The response needs to be returned within 5 seconds or else the webhook fails and no response will be returned to DialogFlow and respond.io.

IS THIS ARTICLE HELPFUL?

We'd love to hear from you!

Dialogflow: Custom Payloads

Can't find what you're looking for?

Talk to an expert here!

Contact Us
Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)