SlideShare uma empresa Scribd logo
1 de 37
Nintex
xchange 2018
February 26–28
SAN DIEGO
Mike Oryszak
Managing Director
B&R BUSINESS SOLUTIONS, LLC
Xtending Nintex Workflow Cloud w/ Azure Functions
Tom Castiglia
Solution Architect
DOCFLUIX, LLC
About Tom Castiglia
• SharePoint / Office 365 Consultant
• President of the San Diego SharePoint User Group
• Meetup.com/sanspug & meetup.com/socalo365
• Nintex vTE (virtual Technical Evangelist)
• Speaker at various SharePoint Saturday conferences
@TomCastiglia
About Mike Oryszak
• SharePoint / Office 365 / Azure Consultant
• President of the Triangle SharePoint User Group
• meetup.com/trispug
• Speaker at various conferences and events
@next_connect
• Azure Functions
• Open API (Swagger)
• Solution Overview
• Azure Portal Demo
• Function Review
• Define Xtension in NWC
• Define Connection in
NWC
• Use the Action
• Solution Overview
• NWC Integration
• Define Xtension in NWC
• Define Connection in
NWC
• Use the Action
• More Use Cases
• Q&A
• References
Agenda
Overview Logging Compliance
Activities to Azure
Retrieve GSA Per Diem
Rates
Next Steps
Overview
9
Azure Functions - Overview
Build apps faster with a serverless architecture
Accelerate your development with an event-driven, serverless compute
experience. Scale on demand and pay only for the resources you consume.
Manage your apps instead of infrastructure
Don’t worry about provisioning and maintaining servers, especially when your
workload grows. Functions provides a fully managed compute platform with high
reliability and security and they scale on demand.
10
Azure Functions - Overview
Develop your way
• Languages: JavaScript, C#, and F#, and scripting options such as Python, PHP,
Bash, Batch, and PowerShell.
• Code directly in Azure portal
-- OR --
• Code in Visual Studio 2017 15.3 or later (Still in preview)
• Install “Azure Development” workload
• Includes tooling to create Azure Function projects and classes locally and publish
• Includes Azure CLI (Command Line Interface) which allow you to run and debug your
functional locally.
11
Open API (Swagger) - Overview
• When you publish an Azure Function, it creates a
REST endpoint for your function.
• OpenAPI allows you to configure the details of
your endpoint
• URL
• HTTP Methods (GET, POST, PUT, etc.)
• Inputs
• Outputs
12
Open API (Swagger) - Overview
• It’s a JSON file
• Configured using “YAML”…
• “a human friendly data serialization standard for all programming languages.”
• “YAML Ain't Markup Language”
• Import your function to NWC as a custom connector /
action
• Help available at https://swagger.io
Scenario 1:
Logging
Compliance
Activities to
Azure
14
Logging Compliance Activities to Azure
• Scenario:
• Imagine many workflows throughout the org including activities within the
scope of internal or external audit
• Need to log compliance activities centrally to support reporting
• Process/Workflow Name
• Category
• Date
• Message
• REST Call to
Function App
Nintex
Workflow
• Triggered with REST
Call
• Parses request and
writes to Queue
Function
App
Storage
Queue
• Triggered by Queue message
• Writes to Cosmos DB
Function
App
Cosmos
DB
Solution Overview
• Developed in the browser using C#
• Leverages
• Function App for processing
• Storage Queue for reliable delivery
• Cosmos DB for storage
Demo!
Scenario 2:
Retrieve GSA
Per Diem Rates
18
GSA Per Diem API
• Common workflow use cases are Travel Authorization
Requests and Expense reports, where employees travel
and incur expenses for Meals and Hotels.
• The GSA publishes official “PerDiems” that dictate the
maximum amounts that are may be expensed for Hotels
and Meals.
• The PerDiem amounts are updated each year.
• Each region has its own per diems (e.g. Hotels in NYC cost more than in Des
Moine)
• PerDiems also vary by month, based on peak travel seasons
• Public web site:
19
Per Diem API
REST API References:
https://www.gsa.gov/technology/government-it-
initiatives/digital-strategy/per-diem-apis/api-for-per-
diem-rates
• Fiscal Year and Zip
https://inventory.data.gov/api/action/datastore_search?resource_id=8ea44bc4-22ba-4386-
b84c-1494ab28964b&filters={"FiscalYear":"2017","Zip":“92131"}
• Fiscal Year and County
https://inventory.data.gov/api/action/datastore_search?resource_id=8ea44bc4-22ba-4386-
b84c-1494ab28964b&filters={"FiscalYear":"2017","County":"Worcester"}
Sample Response
(abbreviated)
• The “Records” element is nested within a bunch of stuff that
can be ignored
• The element for each month represents the Hotel Per Diem
for that month
• The “Meals” element represents the Per Diem allowed for
meals for the year
21
Using Visual Studio• New
Project>Visual
C#>Cloud>Azure
Functions
• “Azure
Functions” maps
to a “Function
App”, which can
contain 1 – N
individual
functions
• Right-click the
project and
select Publish
• Create new Azure
Function App.
Then click
Publish.
22
Function App• Log into Azure
Portal to review
new Function App
• Notice it does not
contain any
functions yet
• In Visual Studio,
Right-Click the
Project and click
Add > New Azure
Function
• Name the function
and click Add
• Select function
type as Http
Trigger and click
OK
23
Sample “Hello, World” Function …Republish from
VS2017 and
notice your
functional app
now contains the
new function
24
GSA Per Diem Wrapper
Accept
Zipcode and
Tripdate in
JSON as
input (in body
of request)
Validate
inputs
Format REST
call to GSA
API
Format JSON
response with
GSA per diem
amounts
(Hotel and
Meals)
25
INPUT
JSON Formatting OUTPUT
26
Classes for GSA Per Diem JSON
27
Deserialize Input JSON
Incoming JSON
28
Call to GSA REST API
29
Output JSON / HTTP Response
JSON Response
30
Configure HTTP Methods
31
Configure API Definition
32
Nintex Workflow Cloud
33
Nintex Workflow Cloud
34
Configure GSA Per Diem Action in NWC
Next Steps
36
Additional Use Cases
• Integrating with additional LOB systems
Q&A
Xtending nintex workflow cloud w azure functions - xchange conference

Mais conteúdo relacionado

Mais procurados

Icinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, GrafanaIcinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, GrafanaIcinga
 
IcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und GrafanaIcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und GrafanaIcinga
 
Building real-time data analytics on Google Cloud
Building real-time data analytics on Google CloudBuilding real-time data analytics on Google Cloud
Building real-time data analytics on Google CloudJonny Daenen
 
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configurationIcinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configurationIcinga
 
Integrate 2017 unlock azure hybrid integration with biz talk - ws
Integrate 2017   unlock azure hybrid integration with biz talk - wsIntegrate 2017   unlock azure hybrid integration with biz talk - ws
Integrate 2017 unlock azure hybrid integration with biz talk - wsWagner Silveira
 
Icinga Camp Bangalore - Icinga and Icinga Director
Icinga Camp Bangalore - Icinga and Icinga Director Icinga Camp Bangalore - Icinga and Icinga Director
Icinga Camp Bangalore - Icinga and Icinga Director Icinga
 
Kafka in practice
Kafka in practiceKafka in practice
Kafka in practiceCaique Lima
 
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016yalisassoon
 
Introduction into Icinga
Introduction into IcingaIntroduction into Icinga
Introduction into IcingaIcinga
 
Offline first with Couchbase Mobile
Offline first with Couchbase MobileOffline first with Couchbase Mobile
Offline first with Couchbase MobileVegard Haugstvedt
 
Modelling event data in look ml
Modelling event data in look mlModelling event data in look ml
Modelling event data in look mlyalisassoon
 
Icinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the wayIcinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the wayIcinga
 
SplunkLive! Salt Lake City June 2013 - Ancestry.com
SplunkLive! Salt Lake City June 2013 - Ancestry.comSplunkLive! Salt Lake City June 2013 - Ancestry.com
SplunkLive! Salt Lake City June 2013 - Ancestry.comSplunk
 
Presentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in VeronaPresentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in VeronaIcinga
 
How to use hybrid cloud to migrate and deploy unified business applications i...
How to use hybrid cloud to migrate and deploy unified business applications i...How to use hybrid cloud to migrate and deploy unified business applications i...
How to use hybrid cloud to migrate and deploy unified business applications i...Eric D. Schabell
 
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...NETWAYS
 
Forecast: Cloud-y with Azure Skies
Forecast: Cloud-y with Azure SkiesForecast: Cloud-y with Azure Skies
Forecast: Cloud-y with Azure SkiesCharlie Oliver
 
One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)
One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)
One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)GlobalLogic Ukraine
 

Mais procurados (20)

Icinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, GrafanaIcinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, Grafana
 
IcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und GrafanaIcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und Grafana
 
Building real-time data analytics on Google Cloud
Building real-time data analytics on Google CloudBuilding real-time data analytics on Google Cloud
Building real-time data analytics on Google Cloud
 
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configurationIcinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
Icinga Camp San Francisco 2017 - Icinga Director - Managing your configuration
 
Introduction to Rails
Introduction to RailsIntroduction to Rails
Introduction to Rails
 
Integrate 2017 unlock azure hybrid integration with biz talk - ws
Integrate 2017   unlock azure hybrid integration with biz talk - wsIntegrate 2017   unlock azure hybrid integration with biz talk - ws
Integrate 2017 unlock azure hybrid integration with biz talk - ws
 
K2 for blockchain
K2 for blockchainK2 for blockchain
K2 for blockchain
 
Icinga Camp Bangalore - Icinga and Icinga Director
Icinga Camp Bangalore - Icinga and Icinga Director Icinga Camp Bangalore - Icinga and Icinga Director
Icinga Camp Bangalore - Icinga and Icinga Director
 
Kafka in practice
Kafka in practiceKafka in practice
Kafka in practice
 
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
 
Introduction into Icinga
Introduction into IcingaIntroduction into Icinga
Introduction into Icinga
 
Offline first with Couchbase Mobile
Offline first with Couchbase MobileOffline first with Couchbase Mobile
Offline first with Couchbase Mobile
 
Modelling event data in look ml
Modelling event data in look mlModelling event data in look ml
Modelling event data in look ml
 
Icinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the wayIcinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the way
 
SplunkLive! Salt Lake City June 2013 - Ancestry.com
SplunkLive! Salt Lake City June 2013 - Ancestry.comSplunkLive! Salt Lake City June 2013 - Ancestry.com
SplunkLive! Salt Lake City June 2013 - Ancestry.com
 
Presentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in VeronaPresentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in Verona
 
How to use hybrid cloud to migrate and deploy unified business applications i...
How to use hybrid cloud to migrate and deploy unified business applications i...How to use hybrid cloud to migrate and deploy unified business applications i...
How to use hybrid cloud to migrate and deploy unified business applications i...
 
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
OSMC 2017 | Ops and dev stories- Integrate everything into your monitoring st...
 
Forecast: Cloud-y with Azure Skies
Forecast: Cloud-y with Azure SkiesForecast: Cloud-y with Azure Skies
Forecast: Cloud-y with Azure Skies
 
One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)
One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)
One More State Management in Angular (NGRX vs. NGXS vs. Akita vs. RXJS)
 

Semelhante a Xtending nintex workflow cloud w azure functions - xchange conference

Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018DocFluix, LLC
 
Developing Azure Functions as custom connectors for Flow and Nintex
Developing Azure Functions as custom connectors for Flow and NintexDeveloping Azure Functions as custom connectors for Flow and Nintex
Developing Azure Functions as custom connectors for Flow and NintexDocFluix, LLC
 
Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?Takumi Sakamoto
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsPrashant G Bhoyar (Microsoft MVP)
 
Forced Evolution: Shopify's Journey to Kubernetes
Forced Evolution: Shopify's Journey to KubernetesForced Evolution: Shopify's Journey to Kubernetes
Forced Evolution: Shopify's Journey to KubernetesC4Media
 
Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?C4Media
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Derek Jacoby
 
Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018Daniel Graversen
 
Techniques for scaling application with security and visibility in cloud
Techniques for scaling application with security and visibility in cloudTechniques for scaling application with security and visibility in cloud
Techniques for scaling application with security and visibility in cloudAkshay Mathur
 
First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)Daniel Toomey
 
Fast, Flexible Application Development with Oracle Database Cloud Service
Fast, Flexible Application Development with Oracle Database Cloud ServiceFast, Flexible Application Development with Oracle Database Cloud Service
Fast, Flexible Application Development with Oracle Database Cloud ServiceGustavo Rene Antunez
 
Sps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flowSps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flowVincent Biret
 
Keynote speech
Keynote speechKeynote speech
Keynote speechBizTalk360
 
Enabling digital transformation api ecosystems and data virtualization
Enabling digital transformation   api ecosystems and data virtualizationEnabling digital transformation   api ecosystems and data virtualization
Enabling digital transformation api ecosystems and data virtualizationDenodo
 
API Gateways are going through an identity crisis
API Gateways are going through an identity crisisAPI Gateways are going through an identity crisis
API Gateways are going through an identity crisisChristian Posta
 
Aw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerAw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerVMware Tanzu
 
Scribe online 03 scribe online cdk and api overview
Scribe online 03   scribe online cdk and api overviewScribe online 03   scribe online cdk and api overview
Scribe online 03 scribe online cdk and api overviewScribe Software Corp.
 
Integroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja AzurellaIntegroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja AzurellaBilot
 
Web app job and functions - TUGAIT 2017
Web app job and functions  - TUGAIT 2017Web app job and functions  - TUGAIT 2017
Web app job and functions - TUGAIT 2017Steef-Jan Wiggers
 
Elasticsearch + Cascading for Scalable Log Processing
Elasticsearch + Cascading for Scalable Log ProcessingElasticsearch + Cascading for Scalable Log Processing
Elasticsearch + Cascading for Scalable Log ProcessingCascading
 

Semelhante a Xtending nintex workflow cloud w azure functions - xchange conference (20)

Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018
 
Developing Azure Functions as custom connectors for Flow and Nintex
Developing Azure Functions as custom connectors for Flow and NintexDeveloping Azure Functions as custom connectors for Flow and Nintex
Developing Azure Functions as custom connectors for Flow and Nintex
 
Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
 
Forced Evolution: Shopify's Journey to Kubernetes
Forced Evolution: Shopify's Journey to KubernetesForced Evolution: Shopify's Journey to Kubernetes
Forced Evolution: Shopify's Journey to Kubernetes
 
Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9
 
Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018Key takeaways for SAP PI Integration 2018
Key takeaways for SAP PI Integration 2018
 
Techniques for scaling application with security and visibility in cloud
Techniques for scaling application with security and visibility in cloudTechniques for scaling application with security and visibility in cloud
Techniques for scaling application with security and visibility in cloud
 
First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)
 
Fast, Flexible Application Development with Oracle Database Cloud Service
Fast, Flexible Application Development with Oracle Database Cloud ServiceFast, Flexible Application Development with Oracle Database Cloud Service
Fast, Flexible Application Development with Oracle Database Cloud Service
 
Sps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flowSps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flow
 
Keynote speech
Keynote speechKeynote speech
Keynote speech
 
Enabling digital transformation api ecosystems and data virtualization
Enabling digital transformation   api ecosystems and data virtualizationEnabling digital transformation   api ecosystems and data virtualization
Enabling digital transformation api ecosystems and data virtualization
 
API Gateways are going through an identity crisis
API Gateways are going through an identity crisisAPI Gateways are going through an identity crisis
API Gateways are going through an identity crisis
 
Aw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerAw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymer
 
Scribe online 03 scribe online cdk and api overview
Scribe online 03   scribe online cdk and api overviewScribe online 03   scribe online cdk and api overview
Scribe online 03 scribe online cdk and api overview
 
Integroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja AzurellaIntegroi oikein BizTalkilla ja Azurella
Integroi oikein BizTalkilla ja Azurella
 
Web app job and functions - TUGAIT 2017
Web app job and functions  - TUGAIT 2017Web app job and functions  - TUGAIT 2017
Web app job and functions - TUGAIT 2017
 
Elasticsearch + Cascading for Scalable Log Processing
Elasticsearch + Cascading for Scalable Log ProcessingElasticsearch + Cascading for Scalable Log Processing
Elasticsearch + Cascading for Scalable Log Processing
 

Mais de Michael Oryszak

Making Workflow Automation Personal: The Next Step in Digital Transformation...
Making Workflow Automation Personal:  The Next Step in Digital Transformation...Making Workflow Automation Personal:  The Next Step in Digital Transformation...
Making Workflow Automation Personal: The Next Step in Digital Transformation...Michael Oryszak
 
Making Workflow Automation Personal: Next Step in Digital Transformation (SP...
Making Workflow Automation Personal:  Next Step in Digital Transformation (SP...Making Workflow Automation Personal:  Next Step in Digital Transformation (SP...
Making Workflow Automation Personal: Next Step in Digital Transformation (SP...Michael Oryszak
 
Making Workflow Automation Personal: The Next Step in Digital Transformation...
Making Workflow Automation Personal:  The Next Step in Digital Transformation...Making Workflow Automation Personal:  The Next Step in Digital Transformation...
Making Workflow Automation Personal: The Next Step in Digital Transformation...Michael Oryszak
 
Using Search to Unlock the Value of your Content - SPEngage2016
Using Search to Unlock the Value of your Content - SPEngage2016Using Search to Unlock the Value of your Content - SPEngage2016
Using Search to Unlock the Value of your Content - SPEngage2016Michael Oryszak
 
Intro to Delve - SPSATL 2016
Intro to Delve - SPSATL 2016Intro to Delve - SPSATL 2016
Intro to Delve - SPSATL 2016Michael Oryszak
 
Spsnyc 2016 JSLink Primer
Spsnyc 2016   JSLink PrimerSpsnyc 2016   JSLink Primer
Spsnyc 2016 JSLink PrimerMichael Oryszak
 
Unlock the Value of your Content with Optimized Search Results - SPS NYC
Unlock the Value of your Content with Optimized Search Results - SPS NYCUnlock the Value of your Content with Optimized Search Results - SPS NYC
Unlock the Value of your Content with Optimized Search Results - SPS NYCMichael Oryszak
 
Create Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display TemplatesCreate Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display TemplatesMichael Oryszak
 
Developing SP 2013 Display Templates
Developing SP 2013 Display TemplatesDeveloping SP 2013 Display Templates
Developing SP 2013 Display TemplatesMichael Oryszak
 
Create Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display TemplatesCreate Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display TemplatesMichael Oryszak
 
Dynamic Content using Search - SPS Nashville
Dynamic Content using Search - SPS NashvilleDynamic Content using Search - SPS Nashville
Dynamic Content using Search - SPS NashvilleMichael Oryszak
 
Displaying Dynamic Content in SharePoint with Search
Displaying Dynamic Content in SharePoint with SearchDisplaying Dynamic Content in SharePoint with Search
Displaying Dynamic Content in SharePoint with SearchMichael Oryszak
 
Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013
Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013
Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013Michael Oryszak
 
Spsatl2013 Displaying Dynamic Content With SharePoint Search
Spsatl2013   Displaying Dynamic Content With SharePoint SearchSpsatl2013   Displaying Dynamic Content With SharePoint Search
Spsatl2013 Displaying Dynamic Content With SharePoint SearchMichael Oryszak
 
Spsatl2013 Introduction to the SharePoint's Social APIs
Spsatl2013   Introduction to the SharePoint's Social APIsSpsatl2013   Introduction to the SharePoint's Social APIs
Spsatl2013 Introduction to the SharePoint's Social APIsMichael Oryszak
 
Unlocking the Power of SharePoint Search
Unlocking the Power of SharePoint SearchUnlocking the Power of SharePoint Search
Unlocking the Power of SharePoint SearchMichael Oryszak
 
Developer FAST Queries (SPS NY)
Developer FAST Queries (SPS NY)Developer FAST Queries (SPS NY)
Developer FAST Queries (SPS NY)Michael Oryszak
 
Developing FAST Queries - SPSATL
Developing FAST Queries - SPSATLDeveloping FAST Queries - SPSATL
Developing FAST Queries - SPSATLMichael Oryszak
 
Keys to SharePoint Search - SPS Philly
Keys to SharePoint Search - SPS PhillyKeys to SharePoint Search - SPS Philly
Keys to SharePoint Search - SPS PhillyMichael Oryszak
 

Mais de Michael Oryszak (20)

Making Workflow Automation Personal: The Next Step in Digital Transformation...
Making Workflow Automation Personal:  The Next Step in Digital Transformation...Making Workflow Automation Personal:  The Next Step in Digital Transformation...
Making Workflow Automation Personal: The Next Step in Digital Transformation...
 
Making Workflow Automation Personal: Next Step in Digital Transformation (SP...
Making Workflow Automation Personal:  Next Step in Digital Transformation (SP...Making Workflow Automation Personal:  Next Step in Digital Transformation (SP...
Making Workflow Automation Personal: Next Step in Digital Transformation (SP...
 
Making Workflow Automation Personal: The Next Step in Digital Transformation...
Making Workflow Automation Personal:  The Next Step in Digital Transformation...Making Workflow Automation Personal:  The Next Step in Digital Transformation...
Making Workflow Automation Personal: The Next Step in Digital Transformation...
 
Using Search to Unlock the Value of your Content - SPEngage2016
Using Search to Unlock the Value of your Content - SPEngage2016Using Search to Unlock the Value of your Content - SPEngage2016
Using Search to Unlock the Value of your Content - SPEngage2016
 
Intro to Delve - SPSATL 2016
Intro to Delve - SPSATL 2016Intro to Delve - SPSATL 2016
Intro to Delve - SPSATL 2016
 
Spsnyc 2016 JSLink Primer
Spsnyc 2016   JSLink PrimerSpsnyc 2016   JSLink Primer
Spsnyc 2016 JSLink Primer
 
Unlock the Value of your Content with Optimized Search Results - SPS NYC
Unlock the Value of your Content with Optimized Search Results - SPS NYCUnlock the Value of your Content with Optimized Search Results - SPS NYC
Unlock the Value of your Content with Optimized Search Results - SPS NYC
 
Optimize Search Results
Optimize Search ResultsOptimize Search Results
Optimize Search Results
 
Create Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display TemplatesCreate Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display Templates
 
Developing SP 2013 Display Templates
Developing SP 2013 Display TemplatesDeveloping SP 2013 Display Templates
Developing SP 2013 Display Templates
 
Create Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display TemplatesCreate Tailored Search Results through Customized Display Templates
Create Tailored Search Results through Customized Display Templates
 
Dynamic Content using Search - SPS Nashville
Dynamic Content using Search - SPS NashvilleDynamic Content using Search - SPS Nashville
Dynamic Content using Search - SPS Nashville
 
Displaying Dynamic Content in SharePoint with Search
Displaying Dynamic Content in SharePoint with SearchDisplaying Dynamic Content in SharePoint with Search
Displaying Dynamic Content in SharePoint with Search
 
Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013
Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013
Intro to SharePoint's Social APIs - SharePoint Sat NYC 2013
 
Spsatl2013 Displaying Dynamic Content With SharePoint Search
Spsatl2013   Displaying Dynamic Content With SharePoint SearchSpsatl2013   Displaying Dynamic Content With SharePoint Search
Spsatl2013 Displaying Dynamic Content With SharePoint Search
 
Spsatl2013 Introduction to the SharePoint's Social APIs
Spsatl2013   Introduction to the SharePoint's Social APIsSpsatl2013   Introduction to the SharePoint's Social APIs
Spsatl2013 Introduction to the SharePoint's Social APIs
 
Unlocking the Power of SharePoint Search
Unlocking the Power of SharePoint SearchUnlocking the Power of SharePoint Search
Unlocking the Power of SharePoint Search
 
Developer FAST Queries (SPS NY)
Developer FAST Queries (SPS NY)Developer FAST Queries (SPS NY)
Developer FAST Queries (SPS NY)
 
Developing FAST Queries - SPSATL
Developing FAST Queries - SPSATLDeveloping FAST Queries - SPSATL
Developing FAST Queries - SPSATL
 
Keys to SharePoint Search - SPS Philly
Keys to SharePoint Search - SPS PhillyKeys to SharePoint Search - SPS Philly
Keys to SharePoint Search - SPS Philly
 

Último

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Último (20)

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

Xtending nintex workflow cloud w azure functions - xchange conference

  • 1.
  • 3. Mike Oryszak Managing Director B&R BUSINESS SOLUTIONS, LLC Xtending Nintex Workflow Cloud w/ Azure Functions Tom Castiglia Solution Architect DOCFLUIX, LLC
  • 4. About Tom Castiglia • SharePoint / Office 365 Consultant • President of the San Diego SharePoint User Group • Meetup.com/sanspug & meetup.com/socalo365 • Nintex vTE (virtual Technical Evangelist) • Speaker at various SharePoint Saturday conferences @TomCastiglia
  • 5. About Mike Oryszak • SharePoint / Office 365 / Azure Consultant • President of the Triangle SharePoint User Group • meetup.com/trispug • Speaker at various conferences and events @next_connect
  • 6. • Azure Functions • Open API (Swagger) • Solution Overview • Azure Portal Demo • Function Review • Define Xtension in NWC • Define Connection in NWC • Use the Action • Solution Overview • NWC Integration • Define Xtension in NWC • Define Connection in NWC • Use the Action • More Use Cases • Q&A • References Agenda Overview Logging Compliance Activities to Azure Retrieve GSA Per Diem Rates Next Steps
  • 8. 9 Azure Functions - Overview Build apps faster with a serverless architecture Accelerate your development with an event-driven, serverless compute experience. Scale on demand and pay only for the resources you consume. Manage your apps instead of infrastructure Don’t worry about provisioning and maintaining servers, especially when your workload grows. Functions provides a fully managed compute platform with high reliability and security and they scale on demand.
  • 9. 10 Azure Functions - Overview Develop your way • Languages: JavaScript, C#, and F#, and scripting options such as Python, PHP, Bash, Batch, and PowerShell. • Code directly in Azure portal -- OR -- • Code in Visual Studio 2017 15.3 or later (Still in preview) • Install “Azure Development” workload • Includes tooling to create Azure Function projects and classes locally and publish • Includes Azure CLI (Command Line Interface) which allow you to run and debug your functional locally.
  • 10. 11 Open API (Swagger) - Overview • When you publish an Azure Function, it creates a REST endpoint for your function. • OpenAPI allows you to configure the details of your endpoint • URL • HTTP Methods (GET, POST, PUT, etc.) • Inputs • Outputs
  • 11. 12 Open API (Swagger) - Overview • It’s a JSON file • Configured using “YAML”… • “a human friendly data serialization standard for all programming languages.” • “YAML Ain't Markup Language” • Import your function to NWC as a custom connector / action • Help available at https://swagger.io
  • 13. 14 Logging Compliance Activities to Azure • Scenario: • Imagine many workflows throughout the org including activities within the scope of internal or external audit • Need to log compliance activities centrally to support reporting • Process/Workflow Name • Category • Date • Message
  • 14. • REST Call to Function App Nintex Workflow • Triggered with REST Call • Parses request and writes to Queue Function App Storage Queue • Triggered by Queue message • Writes to Cosmos DB Function App Cosmos DB Solution Overview • Developed in the browser using C# • Leverages • Function App for processing • Storage Queue for reliable delivery • Cosmos DB for storage
  • 15. Demo!
  • 17. 18 GSA Per Diem API • Common workflow use cases are Travel Authorization Requests and Expense reports, where employees travel and incur expenses for Meals and Hotels. • The GSA publishes official “PerDiems” that dictate the maximum amounts that are may be expensed for Hotels and Meals. • The PerDiem amounts are updated each year. • Each region has its own per diems (e.g. Hotels in NYC cost more than in Des Moine) • PerDiems also vary by month, based on peak travel seasons • Public web site:
  • 18. 19 Per Diem API REST API References: https://www.gsa.gov/technology/government-it- initiatives/digital-strategy/per-diem-apis/api-for-per- diem-rates • Fiscal Year and Zip https://inventory.data.gov/api/action/datastore_search?resource_id=8ea44bc4-22ba-4386- b84c-1494ab28964b&filters={"FiscalYear":"2017","Zip":“92131"} • Fiscal Year and County https://inventory.data.gov/api/action/datastore_search?resource_id=8ea44bc4-22ba-4386- b84c-1494ab28964b&filters={"FiscalYear":"2017","County":"Worcester"}
  • 19. Sample Response (abbreviated) • The “Records” element is nested within a bunch of stuff that can be ignored • The element for each month represents the Hotel Per Diem for that month • The “Meals” element represents the Per Diem allowed for meals for the year
  • 20. 21 Using Visual Studio• New Project>Visual C#>Cloud>Azure Functions • “Azure Functions” maps to a “Function App”, which can contain 1 – N individual functions • Right-click the project and select Publish • Create new Azure Function App. Then click Publish.
  • 21. 22 Function App• Log into Azure Portal to review new Function App • Notice it does not contain any functions yet • In Visual Studio, Right-Click the Project and click Add > New Azure Function • Name the function and click Add • Select function type as Http Trigger and click OK
  • 22. 23 Sample “Hello, World” Function …Republish from VS2017 and notice your functional app now contains the new function
  • 23. 24 GSA Per Diem Wrapper Accept Zipcode and Tripdate in JSON as input (in body of request) Validate inputs Format REST call to GSA API Format JSON response with GSA per diem amounts (Hotel and Meals)
  • 25. 26 Classes for GSA Per Diem JSON
  • 27. 28 Call to GSA REST API
  • 28. 29 Output JSON / HTTP Response JSON Response
  • 33. 34 Configure GSA Per Diem Action in NWC
  • 35. 36 Additional Use Cases • Integrating with additional LOB systems
  • 36. Q&A

Notas do Editor

  1. Fair warning … this is the most complex part of the process. Troubleshooting is tricky. We could easily spend an hour on this alone, but we’ll have to skim over this part later.
  2. Visual Studio provides excellent support for serializing / deserializing between JSON. Also can auto-generate new classes from existing JSON, using the Paste Special menu under Edit.
  3. The CreateResponse method automatically serializes the PerDiemOutput class into JSON.
  4. If we enable additional methods that aren’t needed the API definition (next step) will be more complex, so its best to limit to just POST.
  5. Select the Function App > Platform Features > API Definition Click Generate API Definition template Edit the API Definition Save
  6. Click Xtensions then the Plus (+) sign Copy/Paste the API Definition Url including the key (from Azure portal). Then click Next. Accept default settings on the Security page. Then click Next. Specify a friendly Name and Description for the connector. Select an icon or upload a custom icon. Then click Save.
  7. Click Connections > Add New Select the DocFluix Demo App from the Connector list, then click Connect Give the new connection a friendly name (e.g. DocFluix Demo) and paste in the API Key, the click Connect Verify the connection is created successfully, then click Ok