SlideShare a Scribd company logo
1 of 66
Download to read offline
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
ClaimYour Community Badge
● Get community badges for watching
webinars!
● fme.ly/WebinarBadge
● Today’s code: GFCSB
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

More Related Content

Similar to Web Connections & Services in FME Webinar

OAuth2 - Introduction
OAuth2 - IntroductionOAuth2 - Introduction
OAuth2 - IntroductionKnoldus Inc.
 
.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 19aminmesbahi
 
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 PlatformEnablex1
 
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 CloudSafe Software
 
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?AmeliaWong21
 
Wt5 deploying and managing ap is
Wt5 deploying and managing ap isWt5 deploying and managing ap is
Wt5 deploying and managing ap isAkihiro Iwaya
 
Creating your own FME Connectors.pdf
Creating your own FME Connectors.pdfCreating your own FME Connectors.pdf
Creating your own FME Connectors.pdfSafe Software
 
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 AppWoodruff Solutions LLC
 
Oracle RightNow Customer Portal Migration
Oracle RightNow Customer Portal MigrationOracle RightNow Customer Portal Migration
Oracle RightNow Customer Portal MigrationCRMIT
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfRaghunathan52
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfRaghunathan52
 
0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdf0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdfZani10
 
How to – rest api proxy to soap webservice
How to – rest api proxy to soap webserviceHow to – rest api proxy to soap webservice
How to – rest api proxy to soap webserviceSon Nguyen
 

Similar to Web Connections & Services in FME Webinar (20)

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
 
Creating your own FME Connectors.pdf
Creating your own FME Connectors.pdfCreating your own FME Connectors.pdf
Creating your own FME Connectors.pdf
 
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
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdf
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdf
 
0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdf0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdf
 
How to – rest api proxy to soap webservice
How to – rest api proxy to soap webserviceHow to – rest api proxy to soap webservice
How to – rest api proxy to soap webservice
 
It and ej
It and ejIt and ej
It and ej
 
SalesForce WebServices part 2
SalesForce WebServices part 2SalesForce WebServices part 2
SalesForce WebServices part 2
 

More from Safe Software

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 InnovationSafe Software
 
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 StreamsSafe Software
 
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 EcosystemSafe 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 DataSafe 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 WorkflowsSafe Software
 
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 InsightSafe Software
 
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 GISSafe Software
 
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 & EsriSafe 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).pdfSafe Software
 
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 TechnologySafe Software
 
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...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 DataSafe Software
 
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 FoundersSafe 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 HeightsSafe 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 StrategySafe Software
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Safe Software
 
Mastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FMEMastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FMESafe Software
 
Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...Safe Software
 
Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework Safe Software
 

More from Safe Software (20)

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
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
Geospatial Synergy: Amplifying Efficiency with FME & Esri ft. Peak Guest Spea...
 
Mastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FMEMastering DevOps-Driven Data Integration with FME
Mastering DevOps-Driven Data Integration with FME
 
Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...Identification of landscape features eligible for EU subsidy - Analysis of la...
Identification of landscape features eligible for EU subsidy - Analysis of la...
 
Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework Utilizing FME as an API Test Framework
Utilizing FME as an API Test Framework
 

Recently uploaded

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
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?
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

Web Connections & Services in FME Webinar

  • 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. ClaimYour Community Badge ● Get community badges for watching webinars! ● fme.ly/WebinarBadge ● Today’s code: GFCSB Join the Community today! Next Steps
  • 66. ThankYou Recap of Next Steps 1 Join the FME Community 2 Contact us 3 Experience the FME Accelerator Please fill out our webinar survey