Google Dialogflow

Create conversational experiences across devices and platforms.

Integrate the Google Dialogflow API with the Amazon SES API

Setup the Google Dialogflow API trigger to run a workflow which integrates with the Amazon SES API. Pipedream's integration platform allows you to integrate Google Dialogflow and Amazon SES remarkably fast. Free for developers.

Create Context with the Google Dialogflow API

Creates a context, See REST docs and client API

 
Try it
Create Email Template with the Amazon SES API

Create a HTML or a plain text email template. See the docs

 
Try it
Create Entities with the Google Dialogflow API

Batch create entities, See REST docs and client API docs

 
Try it
Get Email Template with the Amazon SES API

Get an email template. See the docs

 
Try it
Create Entity Type with the Google Dialogflow API

Creates an Entity Type, See REST docs and client API docs

 
Try it

Overview of Google Dialogflow

Google Dialogflow API empowers you to create conversational interfaces for websites, apps, and messaging platforms. Think chatbots that can engage in human-like dialogue, provide customer support, guide through sales processes, or control smart home devices with voice commands. With Pipedream's integration capabilities, you can create automated workflows that trigger actions in other apps based on Dialogflow's processed input, enabling seamless interaction across a plethora of services.

Connect Google Dialogflow

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
module.exports = defineComponent({
  props: {
    google_dialogflow: {
      type: "app",
      app: "google_dialogflow",
    }
  },
  async run({steps, $}) {
    // Example code from the Dialogflow Node.js library:
    // https://github.com/googleapis/nodejs-dialogflow
    const dialogflow = require('dialogflow')
    const uuid = require('uuid')
    
    // A unique identifier for the given session
    const sessionId = uuid.v4()
    
    const key = JSON.parse(this.google_dialogflow.$auth.key_json)
     
    // Creates a session client from a Google service account key.
    const sessionClient = new dialogflow.SessionsClient({
      projectId: key.project_id,
      credentials: {
        client_email: key.client_email,
        private_key: key.private_key,
      }
    })
    const sessionPath = sessionClient.sessionPath(key.project_id, sessionId)
    
    // The text query request.
    const request = {
      session: sessionPath,
      queryInput: {
        text: {
          // The query to send to the dialogflow agent
          text: 'hello',
          // The language used by the client (en-US)
          languageCode: 'en-US',
        },
      },
    }
    
    // Send request and log result
    const responses = await sessionClient.detectIntent(request)
    console.log('Detected intent')
    const result = responses[0].queryResult
    console.log(`Query: ${result.queryText}`)
    console.log(`Response: ${result.fulfillmentText}`)
    if (result.intent) {
      console.log(`Intent: ${result.intent.displayName}`)
    } else {
      console.log(`No intent matched.`)
    }
  },
})

Overview of Amazon SES

Amazon Simple Email Service (SES) is a powerful cloud-based email sending service designed to help digital marketers and application developers send marketing, notification, and transactional emails. With the SES API, you can reliably send emails at scale, manage sender reputations, view email sending statistics, and maintain a high deliverability rate. Leveraging Pipedream's capabilities, you can integrate SES seamlessly into serverless workflows, automate email responses based on triggers from other apps, and analyze the effectiveness of your email campaigns by connecting to data analytics platforms.

Connect Amazon SES

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
module.exports = defineComponent({
  props: {
    amazon_ses: {
      type: "app",
      app: "amazon_ses",
    }
  },
  async run({steps, $}) {
    const AWS = require("aws-sdk")
    const { accessKeyId, secretAccessKey } = this.amazon_ses.$auth
    
    const ses = new AWS.SES({
      accessKeyId, 
      secretAccessKey,
      region: 'us-east-1',
    })
    
    const sesParams = {
      Destination: {
        ToAddresses: ["<your email here>"],
      }, 
      Message: {
        Body: {
          Html: {
            Charset: "UTF-8", 
            Data: "<h1>This is a test</h1>",
          }, 
            Text: {
            Charset: "UTF-8", 
            Data: "This is a test",
          }
        }, 
        Subject: {
          Charset: "UTF-8", 
          Data: "Test email",
        }
      },
      Source: "<your from address here", 
    };
    
    this.resp = await ses.sendEmail(sesParams).promise()
  },
})