SlideShare une entreprise Scribd logo
1  sur  67
Télécharger pour lire hors ligne
Web Connections & Services
in FME: Tips & Tricks to
Setting Up and Harnessing
their Full Potential
Jen
Luther Thomas
Technical Support Team
Lead, FME Flow Hosted
Matt
Meeboer
Technical Support Specialist,
FME Flow
Jenna
Kim
Technical Support Specialist,
FME Form
Agenda
1 Introduction
2 Safe & FME
3 Connecting to a New Web Service: What You Need
4 Building the Web Service Definition
5 Using the HTTPCaller: Making API Calls
6 Real World Examples
7 Sharing Web Connections
8 Troubleshooting Your Web Service
9 Conclusion
10 Resources, Next Steps, Q&A
Welcome to Livestorm.
A few ways to engage with us during the webinar:
Audio issues? Click this for 4 simple
troubleshooting steps.
How to download slides
1. Hover over the
slide deck in the
webinar room
2. Click this button
Poll: What is your
experience with web
connections and
services?
1
Introduction
Gain a comprehensive
understanding of web connections
using FME and enhance your
technical capabilities.
Introduction
More of Our Data is Living in Web Applications
Common frustrations people face with this topic are:
● How do I integrate with my Web Application?
● FME doesn’t have a connection template for my Web Application!
● I setup a connection, but it doesn’t work.
● Ok, I’m connected, but the connection is unreliable :-(
We’re here to help!
Introduction
● Reusable
● Shareable
● Deployable (especially paired with
Deployment Parameters)
● Exchangeable
● ArcGIS, SharePoint, Google, Amazon,
Trimble and much more
Importance of Web
Connections in FME
Introduction
2
Safe & FME
FME Form
(was FME Desktop)
FME Flow
(was FME Server)
FME Flow Hosted
(was FME Cloud)
FME Enterprise Integration Platform
Safe & FME
Number
of
supported
formats
in
FME
1995 2000 2005 2010 2015 2020 2023…
10
100
300
500
GIS
CAD
Database
XML
Raster
3D
BIM
Web
Point
Cloud
Cloud
Big
Data
IOT
Gaming
BI
Indoor
Mapping
AR/VR
Generative
AI
Cloud
Native
Tabular
Safe & FME
3
Connecting to a
New Web Service:
WhatYou Need to
Know
Web Connections - What are they?
● A safe and convenient way to store and reuse your
connection parameters
● A secure, named container to use in your workflows
● Use with all supported authentication protocols
● Register with Web Services from FME Form
● Different types: OAuth 2.0, Token, HTTP
Authentication
Connecting to a New Web Service: What You Need to Know
Two Parts
The Web Service
Connecting to a New Web Service: What You Need to Know
The Web Connection
One service, many connections
Key Components of a Web Service
● Token: An alphanumeric string used to authenticate and identify an application to an
API. Takes the place of a username + password.
● REST API: a set of defined constraints that allows the software to communicate with a
defined protocol, like HTTP. In web services, REST APIs serve tokens.
● JSON: Javascript Object Notation. The format used to pass data back and forth to a web
service’s REST APIs
Connecting to a New Web Service: What You Need to Know
More components based on type of web service
Why API Authentication Matters
● Authentication: Verifies your identity before you
can make a request.
● Authorization: Verifies that you are allowed to make
that request.
Authentication protects an API’s data, resources and
functionality.
Connecting to a New Web Service: What You Need to Know
Connecting to a New Web Service: What You Need to Know
401 error: no token provided in request or bad token provided
403 error: forbidden. Authenticated ok, but the token is not authorization
to access the resource requested
Authenticating with FME
HTTP Authentication Protocols
● Basic
● Digest
● Kerberos
● NTLM
Even More Ways to Authenticate….
● API Keys/Application Tokens
● User Tokens
● OAuth 2.0
Connecting to a New Web Service: What You Need to Know
Connecting to a New Web Service: What You Need to Know
Authentication Token Expiry
● For security, authentication tokens almost always
expire after time
● Duration before expiry determined by web
application providing token, not FME.
● When using token to authenticate, FME will track
when current one expires, get new one if needed
Connecting to a New Web Service: What You Need to Know
ok nice very nice!
Laying the Groundwork
● Can you access web application you are building the web service for from FME Form or
Flow machine?
● Have you reviewed web application vendor’s API Documentation?
● Review FME Form doc for reader or writer you are going to use web connection for
● Review articles in FME Community for step-by-step instructions on creating web services
for popular web applications
Connecting to a New Web Service: What You Need to Know
4
Building the
Web Service
Definition
Token Web Services
● One of common web service types (other: OAuth 2.0)
● Simpler than OAuth 2.0
● Request a token from web application’s REST API in format
specified by provider
● Token expiry time is received from the REST API
● When token expires, same process to get another (not the case
with OAuth 2.0)
Building the Web Service Definition
Token Web Service Key Components
Token Generation REST API:
tells FME how to make the request to get a
token
Access Token Response:
tells FME the token and expiry key names it
should expect back
API Call Parameters:
tells FME how to use the token key to make
calls to the web application
Building the Web Service Definition
Token Web
Service
Demo
ParameterizeYour Web Services
Building the Web Service Definition
5
Using the
HTTPCaller:
Making API Calls
Introduction to the HTTPCaller and its role in web
service integration
In 2018 on the FME Community (Ideas) a user requested:
“Similar to how the Slack integration works, it
would be nice to automate the push notification of
x,y,and z to a channel within Microsoft Teams.”
Using the HTTPCaller: Making API Calls
Step-by-step guide for utilizing the HTTPCaller in
FME to make API calls
● Does the application that you want to interact with have an API?
● Find the documentation for the request you need to make
● How does that service authenticate?
● Start building!
Using the HTTPCaller: Making API Calls
OAuth 2.0 Web Service Key Components
Client ID:
is the public identifier for your application
Client Secret:
acts as a password between the client (FME) and the
service
Redirect URI:
tells the service where to send sensitive information
(tokens)
Authorization URL:
where FME will request an authorization code from
Building the Web Service Definition
How to configure the Microsoft Teams web service
OAuth 2.0 Web Service Key Components
Client ID
Client Secret
generate a secret for FME Flow
Redirect URI
choose desktop app (Form) or web app
(Flow)
Tenancy
for the authorization url
API permissions
control what FME is authorized to access
Building the Web Service Definition
Build and Test: Web Service Permissions
To make requests to the Microsoft Graph API the user will need to be authorized to access
specific resources.
Using the HTTPCaller: Making API Calls
The permissions that are needed are
listed in the API documentation.
To be authorized to send a message
the ChannelMessage.Send
permission is required.
Build and Test: Web Service Permissions
Using the HTTPCaller: Making API Calls
Add all required permissions to the
Azure app registration. These can be
found in the Microsoft
documentation.
To POST a message multiple HTTP
requests are required to obtain team
id, channel id and send the chat
message.
POST /teams/{team-id}/channels/{channel-id}/messages
Build and Test: HTTPCallers
Using the HTTPCaller: Making API Calls
Put it all together
Every HTTPCaller uses the same Microsoft Teams web
service, configured as a web connection user parameter
Share your work!
Make your process easy to use (custom transformer)
Template your web service definition
Share it on hub.safe.com
6
Real World
Examples
Benefits of connecting to Web Services
● Web services enable remote data access, interoperability, and modularity for cost-efficient
and scalable global solutions.
● Standardized protocols ensure platform-independent communication; modular services
offer easy maintenance, real-time updates, and agile pivoting.
● Integration of diverse web services provides security, innovation, and specialized
functionality for powerful, adaptable, feature-rich apps.
Real World Examples
Popular Web Services in FME
Real World Examples
+ Endless
possibilities
Demo
7
Sharing Web
Connections
Sharing Web Connections within your
Organization
If you have only FME Form:
● Export/Import web service .xml definition in FME Form
● Sharing the FME Form connection storage file and the public key file on a network drive
Sharing Web Connections
Making Database and
Web Connections
Public
Publish to FME Flow
● Share web connections with other FME Flow users
● Create Deployment Parameters (Requires FME Flow 2023+)
Sharing Web Connections
You will need to share the connection on
FME Flow for others to use it.
Sharing Web Connections
● The underlying web service is uploaded with the web connection
Sharing Web Connections
● OAuth 2.0 Web Service?
● Don’t forget to configure on FME Flow!
Deployment Parameters:Your Best Option
Sharing Web Connections
very nice!
Deployment Parameters
Connecting to a New Web Service: What You Need to Know
One parameter, many values
(depends on connected FME
Flow Instance)
FME Flow Test Instance
FME Flow Production Instance
8
Troubleshooting
Your Web Service
Generic Troubleshooting Tips
● Have you verified the connection is set up correctly?
● If you’re seeing an error message, have you searched the internet for that error?
● Use web monitoring tools
● Have you looked in log files?
Testing and Troubleshooting Your Web Service
OAuth 2.0 Connection Errors
● OAuth Failed
● Invalid Redirect URI
● Check your web service settings
○ Client id, secret and redirect url must all match
values from the oauth app in the web application!
Testing and Troubleshooting Your Web Service
Testing and Troubleshooting Your Web Service
More Errors
● HTTP Errors (i.e., 401, 403, 404)
● Timeouts
○ FME can’t reach the web application URL
● HTTPS or SSL Certificate Errors (FME Flow)
○ May need to import the ssl certificates to establish
trust
● Can you get a token outside of FME using a tool like
Postman or cURL?
Testing and Troubleshooting Your Web Service
Troubleshooting
ArcGIS Online Web
Connections
Troubleshooting
SharePoint Web
Connections
Connection Stops Working on FME Flow
● Works for a while, then you start receiving invalid token errors
● Tokens are published with the web service, but they expire
● Confirm your web service is configured correctly on FME Flow
○ Authorize the web connection
● Use different web connections for different FME Flow instances
Testing and Troubleshooting Your Web Service
9
Conclusion
Summary
● Web connections let you reuse and share
without hard-coding web application
credentials
● A web connection has underlying web
service configuration
● Web services use tokens to authenticate
● Key web service types: token and OAuth
● FME provides web service templates for
dozens of popular web applications
● Define your own web service templates
using web application vendor’s
documentation
Conclusion
10
Resources
Resources
● Web Connections and FME
● Making Database and Web Connections
Public
● Deployment Parameters
● FME Flow Troubleshooting: Web
Connections
● Check out the FME Community for many
application-specific web connection
articles!
Get our Ebook
Spatial Data for the
Enterprise
fme.ly/gzc
Guided learning experiences
at your fingertips
community.safe.com
/s/academy
FME Academy
Webinars
Upcoming & on-demand
webinars
safe.com/webinars
10
Next Steps
We’d love to help you get
started.
Get in touch with us at
info@safe.com
Experience the FME Accelerator
Contact Us
Unlock the power of your
data in only 90 minutes
Register for free at
fme.safe.com/accelerator
Next Steps
Our largest
FME user
conference
yet.
Sept 5-7 | 100+ sessions
co-hosted by Safe Software & con terra
Next Steps
ClaimYour Community Badge
● Get community badges for watching
webinars!
● fme.ly/WebinarBadge
● Today’s code: MGFLW
Join the Community today!
Next Steps
11
Q&A
ThankYou
Recap of Next Steps
1 Join the FME Community
2 Contact us
3 Experience the FME Accelerator
Please fill out our
webinar survey

Contenu connexe

Tendances

View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法
View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法
View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法
Asa Morino
 

Tendances (20)

View customize pluginを使いこなす
View customize pluginを使いこなすView customize pluginを使いこなす
View customize pluginを使いこなす
 
Spatial ETL For Web Services-Based Data Sharing
Spatial ETL For Web Services-Based Data SharingSpatial ETL For Web Services-Based Data Sharing
Spatial ETL For Web Services-Based Data Sharing
 
Foreman Single Sign-On Made Easy with Keycloak
Foreman Single Sign-On Made Easy with KeycloakForeman Single Sign-On Made Easy with Keycloak
Foreman Single Sign-On Made Easy with Keycloak
 
View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法
View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法
View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法
 
MuleSoft Anypoint Platform and Three Tier Architecture
MuleSoft Anypoint  Platform and Three Tier ArchitectureMuleSoft Anypoint  Platform and Three Tier Architecture
MuleSoft Anypoint Platform and Three Tier Architecture
 
Einstein bots
Einstein botsEinstein bots
Einstein bots
 
ユーザ要望に応えるView customize活用事例
ユーザ要望に応えるView customize活用事例ユーザ要望に応えるView customize活用事例
ユーザ要望に応えるView customize活用事例
 
講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2
 
Introduction à la plateforme Anypoint de MuleSoft
Introduction à la plateforme Anypoint de MuleSoftIntroduction à la plateforme Anypoint de MuleSoft
Introduction à la plateforme Anypoint de MuleSoft
 
Redmineカスタムフィールド表示改善
Redmineカスタムフィールド表示改善Redmineカスタムフィールド表示改善
Redmineカスタムフィールド表示改善
 
¿Cómo elegir tu workflow de Git?
¿Cómo elegir tu workflow de Git?¿Cómo elegir tu workflow de Git?
¿Cómo elegir tu workflow de Git?
 
Hinemosは誤解されている?
Hinemosは誤解されている?Hinemosは誤解されている?
Hinemosは誤解されている?
 
MuleSoft Online meetup - An expert's guide to Runtime fabric - August 2020
MuleSoft Online meetup -  An expert's guide to Runtime fabric - August 2020MuleSoft Online meetup -  An expert's guide to Runtime fabric - August 2020
MuleSoft Online meetup - An expert's guide to Runtime fabric - August 2020
 
IoT 개발자를 위한 Embedded C에서 TDD를 해보자
IoT 개발자를 위한 Embedded C에서 TDD를 해보자IoT 개발자를 위한 Embedded C에서 TDD를 해보자
IoT 개발자를 위한 Embedded C에서 TDD를 해보자
 
[WSO2 API Manager Community Call] Mastering JWTs with WSO2 API Manager
[WSO2 API Manager Community Call] Mastering JWTs with WSO2 API Manager[WSO2 API Manager Community Call] Mastering JWTs with WSO2 API Manager
[WSO2 API Manager Community Call] Mastering JWTs with WSO2 API Manager
 
View customize plugin for Redmineの紹介 (2019年版)
View customize plugin for Redmineの紹介 (2019年版)View customize plugin for Redmineの紹介 (2019年版)
View customize plugin for Redmineの紹介 (2019年版)
 
IBM: Hey FIDO, Meet Passkey!.pptx
IBM: Hey FIDO, Meet Passkey!.pptxIBM: Hey FIDO, Meet Passkey!.pptx
IBM: Hey FIDO, Meet Passkey!.pptx
 
Rtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetesRtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetes
 
ある工場の Redmine 2021 ( Redmine of one plant 2021 )
ある工場の Redmine 2021 ( Redmine of one plant 2021 )ある工場の Redmine 2021 ( Redmine of one plant 2021 )
ある工場の Redmine 2021 ( Redmine of one plant 2021 )
 
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
 

Similaire à Web Connections & Services in FME: Tips & Tricks to Setting Up and Harnessing their Full Potential

10135 a 04
10135 a 0410135 a 04
10135 a 04
Bố Su
 

Similaire à Web Connections & Services in FME: Tips & Tricks to Setting Up and Harnessing their Full Potential (20)

How to Connect to Any REST API (Without Writing Any Code)
How to Connect to Any REST API (Without Writing Any Code)How to Connect to Any REST API (Without Writing Any Code)
How to Connect to Any REST API (Without Writing Any Code)
 
OAuth Tokens
OAuth TokensOAuth Tokens
OAuth Tokens
 
Overview on ring central errors
Overview on ring central errorsOverview on ring central errors
Overview on ring central errors
 
Party + REST = Win
Party + REST = WinParty + REST = Win
Party + REST = Win
 
10135 a 04
10135 a 0410135 a 04
10135 a 04
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with OData
 
What are restful web services?
What are restful web services?What are restful web services?
What are restful web services?
 
Mule 4 connecting ring central
Mule 4 connecting ring centralMule 4 connecting ring central
Mule 4 connecting ring central
 
OAuth2 - Introduction
OAuth2 - IntroductionOAuth2 - Introduction
OAuth2 - Introduction
 
Api security
Api security Api security
Api security
 
.NET Core, ASP.NET Core Course, Session 19
 .NET Core, ASP.NET Core Course, Session 19 .NET Core, ASP.NET Core Course, Session 19
.NET Core, ASP.NET Core Course, Session 19
 
Web Servers (ppt)
Web Servers (ppt)Web Servers (ppt)
Web Servers (ppt)
 
How to Create Video Application for an EdTech Platform
How to Create Video Application for an EdTech PlatformHow to Create Video Application for an EdTech Platform
How to Create Video Application for an EdTech Platform
 
Secure Coding: SSL, SOAP, and REST
Secure Coding: SSL, SOAP, and RESTSecure Coding: SSL, SOAP, and REST
Secure Coding: SSL, SOAP, and REST
 
Floating on a (Microsoft) Cloud: Data Integration with Microsoft Cloud
Floating on a (Microsoft) Cloud: Data Integration with Microsoft CloudFloating on a (Microsoft) Cloud: Data Integration with Microsoft Cloud
Floating on a (Microsoft) Cloud: Data Integration with Microsoft Cloud
 
How to use Informatica Power Center as a RESTful Web Service Client?
How to use Informatica Power Center as a RESTful Web Service Client?How to use Informatica Power Center as a RESTful Web Service Client?
How to use Informatica Power Center as a RESTful Web Service Client?
 
Wt5 deploying and managing ap is
Wt5 deploying and managing ap isWt5 deploying and managing ap is
Wt5 deploying and managing ap is
 
The Top Tips You need to Learn about Data in your Mobile App
The Top Tips You need to Learn about Data in your Mobile AppThe Top Tips You need to Learn about Data in your Mobile App
The Top Tips You need to Learn about Data in your Mobile App
 
RESTful Day 5
RESTful Day 5RESTful Day 5
RESTful Day 5
 
Oracle RightNow Customer Portal Migration
Oracle RightNow Customer Portal MigrationOracle RightNow Customer Portal Migration
Oracle RightNow Customer Portal Migration
 

Plus de Safe Software

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Safe Software
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Safe Software
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Safe Software
 
Taking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New HeightsTaking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New Heights
Safe Software
 
Initiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance Strategy
Safe Software
 

Plus de Safe Software (20)

The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action:  Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action:  Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
The Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data EcosystemThe Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data Ecosystem
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Mastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GISMastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GIS
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
 
Breaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI TechnologyBreaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI Technology
 
Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
 
New Year's Fireside Chat with Safe Software’s Founders
New Year's Fireside Chat with Safe Software’s FoundersNew Year's Fireside Chat with Safe Software’s Founders
New Year's Fireside Chat with Safe Software’s Founders
 
Taking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New HeightsTaking Off with FME: Elevating Airport Operations to New Heights
Taking Off with FME: Elevating Airport Operations to New Heights
 
Initiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance StrategyInitiating and Advancing Your Strategic GIS Governance Strategy
Initiating and Advancing Your Strategic GIS Governance Strategy
 

Dernier

Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
FIDO Alliance
 

Dernier (20)

Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 

Web Connections & Services in FME: Tips & Tricks to Setting Up and Harnessing their Full Potential

  • 1. Web Connections & Services in FME: Tips & Tricks to Setting Up and Harnessing their Full Potential
  • 2. Jen Luther Thomas Technical Support Team Lead, FME Flow Hosted Matt Meeboer Technical Support Specialist, FME Flow Jenna Kim Technical Support Specialist, FME Form
  • 3. Agenda 1 Introduction 2 Safe & FME 3 Connecting to a New Web Service: What You Need 4 Building the Web Service Definition 5 Using the HTTPCaller: Making API Calls 6 Real World Examples 7 Sharing Web Connections 8 Troubleshooting Your Web Service 9 Conclusion 10 Resources, Next Steps, Q&A
  • 4. Welcome to Livestorm. A few ways to engage with us during the webinar: Audio issues? Click this for 4 simple troubleshooting steps.
  • 5. How to download slides 1. Hover over the slide deck in the webinar room 2. Click this button
  • 6. Poll: What is your experience with web connections and services?
  • 8. Gain a comprehensive understanding of web connections using FME and enhance your technical capabilities. Introduction
  • 9. More of Our Data is Living in Web Applications Common frustrations people face with this topic are: ● How do I integrate with my Web Application? ● FME doesn’t have a connection template for my Web Application! ● I setup a connection, but it doesn’t work. ● Ok, I’m connected, but the connection is unreliable :-( We’re here to help! Introduction
  • 10. ● Reusable ● Shareable ● Deployable (especially paired with Deployment Parameters) ● Exchangeable ● ArcGIS, SharePoint, Google, Amazon, Trimble and much more Importance of Web Connections in FME Introduction
  • 12. FME Form (was FME Desktop) FME Flow (was FME Server) FME Flow Hosted (was FME Cloud) FME Enterprise Integration Platform Safe & FME
  • 13. Number of supported formats in FME 1995 2000 2005 2010 2015 2020 2023… 10 100 300 500 GIS CAD Database XML Raster 3D BIM Web Point Cloud Cloud Big Data IOT Gaming BI Indoor Mapping AR/VR Generative AI Cloud Native Tabular Safe & FME
  • 14. 3 Connecting to a New Web Service: WhatYou Need to Know
  • 15. Web Connections - What are they? ● A safe and convenient way to store and reuse your connection parameters ● A secure, named container to use in your workflows ● Use with all supported authentication protocols ● Register with Web Services from FME Form ● Different types: OAuth 2.0, Token, HTTP Authentication Connecting to a New Web Service: What You Need to Know
  • 16. Two Parts The Web Service Connecting to a New Web Service: What You Need to Know The Web Connection One service, many connections
  • 17. Key Components of a Web Service ● Token: An alphanumeric string used to authenticate and identify an application to an API. Takes the place of a username + password. ● REST API: a set of defined constraints that allows the software to communicate with a defined protocol, like HTTP. In web services, REST APIs serve tokens. ● JSON: Javascript Object Notation. The format used to pass data back and forth to a web service’s REST APIs Connecting to a New Web Service: What You Need to Know More components based on type of web service
  • 18. Why API Authentication Matters ● Authentication: Verifies your identity before you can make a request. ● Authorization: Verifies that you are allowed to make that request. Authentication protects an API’s data, resources and functionality. Connecting to a New Web Service: What You Need to Know
  • 19. Connecting to a New Web Service: What You Need to Know 401 error: no token provided in request or bad token provided 403 error: forbidden. Authenticated ok, but the token is not authorization to access the resource requested
  • 20. Authenticating with FME HTTP Authentication Protocols ● Basic ● Digest ● Kerberos ● NTLM Even More Ways to Authenticate…. ● API Keys/Application Tokens ● User Tokens ● OAuth 2.0 Connecting to a New Web Service: What You Need to Know
  • 21. Connecting to a New Web Service: What You Need to Know Authentication Token Expiry ● For security, authentication tokens almost always expire after time ● Duration before expiry determined by web application providing token, not FME. ● When using token to authenticate, FME will track when current one expires, get new one if needed
  • 22. Connecting to a New Web Service: What You Need to Know ok nice very nice!
  • 23. Laying the Groundwork ● Can you access web application you are building the web service for from FME Form or Flow machine? ● Have you reviewed web application vendor’s API Documentation? ● Review FME Form doc for reader or writer you are going to use web connection for ● Review articles in FME Community for step-by-step instructions on creating web services for popular web applications Connecting to a New Web Service: What You Need to Know
  • 25. Token Web Services ● One of common web service types (other: OAuth 2.0) ● Simpler than OAuth 2.0 ● Request a token from web application’s REST API in format specified by provider ● Token expiry time is received from the REST API ● When token expires, same process to get another (not the case with OAuth 2.0) Building the Web Service Definition
  • 26. Token Web Service Key Components Token Generation REST API: tells FME how to make the request to get a token Access Token Response: tells FME the token and expiry key names it should expect back API Call Parameters: tells FME how to use the token key to make calls to the web application Building the Web Service Definition
  • 28. Demo
  • 29. ParameterizeYour Web Services Building the Web Service Definition
  • 31. Introduction to the HTTPCaller and its role in web service integration In 2018 on the FME Community (Ideas) a user requested: “Similar to how the Slack integration works, it would be nice to automate the push notification of x,y,and z to a channel within Microsoft Teams.” Using the HTTPCaller: Making API Calls
  • 32. Step-by-step guide for utilizing the HTTPCaller in FME to make API calls ● Does the application that you want to interact with have an API? ● Find the documentation for the request you need to make ● How does that service authenticate? ● Start building! Using the HTTPCaller: Making API Calls
  • 33. OAuth 2.0 Web Service Key Components Client ID: is the public identifier for your application Client Secret: acts as a password between the client (FME) and the service Redirect URI: tells the service where to send sensitive information (tokens) Authorization URL: where FME will request an authorization code from Building the Web Service Definition How to configure the Microsoft Teams web service
  • 34. OAuth 2.0 Web Service Key Components Client ID Client Secret generate a secret for FME Flow Redirect URI choose desktop app (Form) or web app (Flow) Tenancy for the authorization url API permissions control what FME is authorized to access Building the Web Service Definition
  • 35. Build and Test: Web Service Permissions To make requests to the Microsoft Graph API the user will need to be authorized to access specific resources. Using the HTTPCaller: Making API Calls The permissions that are needed are listed in the API documentation. To be authorized to send a message the ChannelMessage.Send permission is required.
  • 36. Build and Test: Web Service Permissions Using the HTTPCaller: Making API Calls Add all required permissions to the Azure app registration. These can be found in the Microsoft documentation. To POST a message multiple HTTP requests are required to obtain team id, channel id and send the chat message. POST /teams/{team-id}/channels/{channel-id}/messages
  • 37. Build and Test: HTTPCallers Using the HTTPCaller: Making API Calls
  • 38. Put it all together Every HTTPCaller uses the same Microsoft Teams web service, configured as a web connection user parameter
  • 39. Share your work! Make your process easy to use (custom transformer) Template your web service definition Share it on hub.safe.com
  • 41. Benefits of connecting to Web Services ● Web services enable remote data access, interoperability, and modularity for cost-efficient and scalable global solutions. ● Standardized protocols ensure platform-independent communication; modular services offer easy maintenance, real-time updates, and agile pivoting. ● Integration of diverse web services provides security, innovation, and specialized functionality for powerful, adaptable, feature-rich apps. Real World Examples
  • 42. Popular Web Services in FME Real World Examples + Endless possibilities
  • 43. Demo
  • 45. Sharing Web Connections within your Organization If you have only FME Form: ● Export/Import web service .xml definition in FME Form ● Sharing the FME Form connection storage file and the public key file on a network drive Sharing Web Connections Making Database and Web Connections Public
  • 46. Publish to FME Flow ● Share web connections with other FME Flow users ● Create Deployment Parameters (Requires FME Flow 2023+) Sharing Web Connections You will need to share the connection on FME Flow for others to use it.
  • 47. Sharing Web Connections ● The underlying web service is uploaded with the web connection
  • 48. Sharing Web Connections ● OAuth 2.0 Web Service? ● Don’t forget to configure on FME Flow!
  • 49. Deployment Parameters:Your Best Option Sharing Web Connections very nice!
  • 50. Deployment Parameters Connecting to a New Web Service: What You Need to Know One parameter, many values (depends on connected FME Flow Instance) FME Flow Test Instance FME Flow Production Instance
  • 52. Generic Troubleshooting Tips ● Have you verified the connection is set up correctly? ● If you’re seeing an error message, have you searched the internet for that error? ● Use web monitoring tools ● Have you looked in log files? Testing and Troubleshooting Your Web Service
  • 53. OAuth 2.0 Connection Errors ● OAuth Failed ● Invalid Redirect URI ● Check your web service settings ○ Client id, secret and redirect url must all match values from the oauth app in the web application! Testing and Troubleshooting Your Web Service
  • 54. Testing and Troubleshooting Your Web Service
  • 55. More Errors ● HTTP Errors (i.e., 401, 403, 404) ● Timeouts ○ FME can’t reach the web application URL ● HTTPS or SSL Certificate Errors (FME Flow) ○ May need to import the ssl certificates to establish trust ● Can you get a token outside of FME using a tool like Postman or cURL? Testing and Troubleshooting Your Web Service Troubleshooting ArcGIS Online Web Connections Troubleshooting SharePoint Web Connections
  • 56. Connection Stops Working on FME Flow ● Works for a while, then you start receiving invalid token errors ● Tokens are published with the web service, but they expire ● Confirm your web service is configured correctly on FME Flow ○ Authorize the web connection ● Use different web connections for different FME Flow instances Testing and Troubleshooting Your Web Service
  • 58. Summary ● Web connections let you reuse and share without hard-coding web application credentials ● A web connection has underlying web service configuration ● Web services use tokens to authenticate ● Key web service types: token and OAuth ● FME provides web service templates for dozens of popular web applications ● Define your own web service templates using web application vendor’s documentation Conclusion
  • 60. Resources ● Web Connections and FME ● Making Database and Web Connections Public ● Deployment Parameters ● FME Flow Troubleshooting: Web Connections ● Check out the FME Community for many application-specific web connection articles!
  • 61. Get our Ebook Spatial Data for the Enterprise fme.ly/gzc Guided learning experiences at your fingertips community.safe.com /s/academy FME Academy Webinars Upcoming & on-demand webinars safe.com/webinars
  • 63. We’d love to help you get started. Get in touch with us at info@safe.com Experience the FME Accelerator Contact Us Unlock the power of your data in only 90 minutes Register for free at fme.safe.com/accelerator Next Steps
  • 64. Our largest FME user conference yet. Sept 5-7 | 100+ sessions co-hosted by Safe Software & con terra Next Steps
  • 65. ClaimYour Community Badge ● Get community badges for watching webinars! ● fme.ly/WebinarBadge ● Today’s code: MGFLW Join the Community today! Next Steps
  • 67. ThankYou Recap of Next Steps 1 Join the FME Community 2 Contact us 3 Experience the FME Accelerator Please fill out our webinar survey