Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Adding sink plugin description, doc refreshment

Introduction

...

Configurables

Batch source

StandardapikeyLogin password username specified above

Section

User Configuration Label

Label Description

Options

Default

Variable

User Widget

BasicAuthentication typeThe way, how user would like to be authenticated to the SendGrid acoount

Basic

Api Key

Basicauth-typeradio-group

API KeyThe SendGrid API Key taken from the SendGrid account of choiceShows if "Authentication type" is set to "api"
sendgrid-api-keytextboxsecurekey-text

UsernameLogin name for SendGridShows if "Authentication type" is set to "basic"
usernametextbox

PasswordPassword for the SendGrid accountShows if "Authentication type" is set to "basic"
passwordpassword

Data Source TypesList of data source groups
  • Marketing Campaigns Fields
  • Stats Fields
  • Suppressions Fields

data-source-typesdataSourceTypesmulti-select

Data SourceMarketing Campaign ObjectsOne of the above sources picked from list

Marketing Campaigns Fields

  • Automation
  • Single Sends
  • Senders
  • Contacts
  • Segments



dataSourceMarketingmulti-select

Statistic ObjectsOne of the above sources picked from listStats
  • Global Stats
  • Category Stats
  • Advanced Stats

dataSourceStatsmulti-select

Suppression ObjectsOne of the above sources picked from listSuppressions
  • Bounces
  • Global Unsubscribes
  • Group Unsubscribes

data-sourcedataSourceSuppressionsmulti-select

Data Source FieldsList of fields to be retrievedsee "Data sources description" section below
data-source-fieldsdataSourceFieldsmulti-select







OptionsStart Date(required by some SG API Endpoints)

The date in format YYYY-MM-DD, starting from which the data is requested.
Displayed depends on list of the selected data sourcesnot setstart-datetextbox

End Date(required by some SG API Endpoints)
The date in format YYYY-MM-DD, the end date for the requested data
Displayed depends on list of the selected data sourcesnot setend-datetextbox
Error HandlingOn Record ErrorHow to handle error in record processing
  • Skip error
  • Send to error port
  • Fail pipeline
Skip erroron-errorRadio Button (layout: block)

Batch sink

Section

User Configuration Label

Label Description

Options

Default

Variable

User Widget

BasicAuthentication type

The way, how user would like to be authenticated

to the SendGrid account

Possible options:

  • Basic
  • Api Key

Required field

Basicauth-typeradio-group

API KeyThe SendGrid API Key taken from the SendGrid accountShows if "Authentication type" is set to "api"
sendgrid-api-keysecurekey-text

UsernameLogin name for the SendGrid accountShows if "Authentication type" is set to "basic"
usernametextbox

PasswordPassword for the SendGrid accountShows if "Authentication type" is set to "basic"
passwordpassword

FromThe author of the messageRequired field
fromtextbox

Recipient address sourceRecipients addresses source selection

The recipient address possible sources:

  • Input Record (input)
  • Configuration (config)

Would be displayed depends on selection:

  • recipientColumnName
  • recipientConfigAddressList

Required field


recipientAddressSourceradio-group

Column name for

recipients addresses

Name of the column with coma-separated list of recipients

recipientColumnNametextbox

Recipient address listList of mail recipients

recipientConfigAddressListcsv

Email subjectEmail SubjectRequired field
mailSubjecttextbox

Email body column nameName of the column for the mail contentRequired field
bodyColumnNametextbox

Reply To

Email address to which the author of

the message suggests that replies be sent



replyTotextbox
OptionsCustom Mail FooterFooter feature setting switcher

Possible states:

  • On (true)
  • Off (false)
OfffooterEnabledtoggle

Footer HTML

The default footer which would be included

to every email



footerHtmltextarea

Sandbox Mode

Allows to send a test email to ensure that

your request body is valid and formatted correctly

Possible states:

  • On (true)
  • Off (false)
OffsandboxModetoggle

Click TrackingAllows to track whether a recipient clicked a link in a email

Possible states:

  • On (true)
  • Off (false)
OffclickTrackingtoggle

Open Tracking

Allows to track whether the email was opened

or not, by including a single pixel image in the body of

the content. When the pixel is loaded, SendGrid can log

that the email was opened

Possible states:

  • On (true)
  • Off (false)
OffopenTrackingtoggle

Subscription Tracking

Allows to insert a subscription management link at the

bottom of the text and html bodies of an email

Possible states:

  • On (true)
  • Off (false)
OffsubscriptionTrackingtoggle


Design Tips and references

...

Data source reference

Data sources description

(TODO)
Field nameTypeDescription

Automation

idstring
namestring
statusstring
typestring
message_countnumber
created_atdatetimestring
updated_atdatetimestring
live_atdatetimestring

SingleSends

idstring
namestring
statusstring
created_atdatetimestring
updated_atdatetimestring
is_abtestboolean

Senders

idstring
nicknamestring
addressstring
address_2string
citystring
countrystring
statestring
zipnumber
lockedboolean
created_atdatetimestring
updated_atdatetimestring
from_emailstring
from_namestring
verified_statusstring
verified_reasonstring
reply_to_namestring
reply_to_emailstring

Contacts

idstring
first_namestring
last_namestring
list_idslist[string]
created_atdatetimestring
updated_atdatetimestring
emailstring

Segments

idstring
namestring
parent_list_idstring
created_atdatetime
updated_atdatetime
sample_updated_atdatetime
contacts_countnumber

GlobalStats

datedatetimestring
metrics_blocksnumber
metrics_bounce_dropsnumber
metrics_bouncesnumber
metrics_clicksnumber
metrics_deferrednumber
metrics_invalid_emailsnumber
metrics_opensnumber
metrics_processednumber
metrics_requestsnumber
metrics_spam_report_dropsnumber
metrics_spam_reportsnumber
metrics_unique_clicksnumber
metrics_unique_opensnumber
metrics_unsubscribe_dropsnumber
metrics_unsubscribesnumber

CategoryStats

namestring
typestring
datedatetimestring
metrics_blocksnumber
metrics_bounce_dropsnumber
metrics_bouncesnumber
metrics_clicksnumber
metrics_deferrednumber
metrics_deliverednumber
metrics_invalid_emailsnumber
metrics_opensnumber
metrics_processednumber
metrics_requestsnumber
metrics_spam_report_dropsnumber
metrics_spam_reportsnumber
metrics_unique_clicksnumber
metrics_unique_opensnumber
metrics_unsubscribe_dropsnumber
metrics_unsubscribesnumber

AdvancedStats

namestring
typestring
datedatetimestring
metrics_clicksnumber
metrics_opensnumber
metrics_unique_clicksnumber
metrics_unique_opensnumber

Bounces

createddatetimestring
emailstring
reasonstring
statusstring

GlobalUnsubscribes

createdstring
emailstring

GroupUnsubscribes

idstring
namestring
descriptionstring
is_defaultboolean
last_email_send_atdatetimestring
unsubscribesnumber

SpamReports (TODO)

Blocks (TODO)

Schedule (TODO)


Authorization

Plugin supporting Basic and API Key authorization, with using API Key by default when provided.

...

SendGrid v3 API have an request rate limiting.    # todo: what to do if the plugin will hit the rate limit?

Approach

TODOThe API requester have integrated way to retry over time to fetch wait for penalty time.

Approach

Create a module sendgrid plugin in sendgrid project with use of existing SendGrid library. Add SendGrid objects with their deserialization from API and transformation to structured records. 

UI Impact or Changes

TODOSendGrid source and sink are separate entries with SendGrid logo in source and sink lists.

Test Case(s)

TODO

Sample Pipeline

...