SlideShare a Scribd company logo
Data Normalization for API Interactions
Importance of APIs
Allows you to use software more selectively

Leverage best of breed apps in your app

Provide value to your users by focusing your
resources on your app

Confidential & Proprietary
APIs are nice and all, but…
Endpoints are not standardized. What!
You don’t have RESTful API?
Same type of data represented in different
formats with different names

How can I reuse without abuse?
My app’s APIs are fast becoming unusable and
unmaintainable
Confidential & Proprietary
Do you really want this?
What, I’ve to put this all together? Why
don’t I just write my own storage solution
and my own CRM system?

Dynamics
Account

SFDC
Account

Element

Element

Box
Folder

Confidential & Proprietary

Sharepoint
Document

Google Drive
Folder
What if you had this?

Account

Folder

Document

Integration and Normalization

Element

Element

Confidential & Proprietary
Normalization Example

Confidential & Proprietary
Use Best Practices for Data Normalization
No matter the endpoint protocol, provide a uniform
protocol from your app, preferably REST with JSON
Transform data from an endpoint into a normalized structure.
Configure your transformations and not code them
Always provide direct access to the endpoint
data, so your app does not become a throttle
Provide customization, but not at the cost of multi-tenancy
Confidential & Proprietary
Multi-tenancy via Configuration
Your Application
Your
Customers

Toyota
Users

Normalization
Configuration

SFDC 1
Toyota

SFDC 2
BestBuy
Users

BestBuy

SFDC 3

Whirlpool
Users

Whirlpool

Sugar

Confidential & Proprietary

Vendor
Custom Transforms and Rules
Canonical SFDC
mapping
CRM Hub - Create Account

Transformation Result

Create CRM Account

4

API JSON Input

5
Transformation

6

3

Custom SFDC
mapping script

2

Custom SFDC
mapping

Confidential & Proprietary

1
Data Normalization works for me
I have one view of an Account object, whether it’s
from Salesforce.com or Microsoft Dynamics
I can use a Document object in a uniform way
regardless of the Storage provider
And I can switch my Cloud Storage provider
at any time
Which should allow me to write code in my app to
hook these all together! Wait a minute…that can be
time consuming. Is there some other way?
Confidential & Proprietary
Which leads to API Interactions
I want my Account to be linked to the
contractual Documents

But, I don’t want to save any of this
information in my application
But, can I achieve these interactions
without writing messy application logic
If my data is already normalized, why
can’t something stitch is all together!
Confidential & Proprietary
Normalized Data can Interact
Use an asynchronous model for interactions, the matrix for
point-to-point interactions will become unmanageable
Don’t write your own Message Bus, use an off
the shelf system that can be extended
Provide a facility for customizable interaction rules
Plan for scale, especially when dealing with Social API endpoints
Be agile, don’t try to replace all the app logic in one attempt
Confidential & Proprietary
Embrace Standards
True REST may not always make sense for your
application, but try your best to adhere to the standard
RAML is now open sourced, definitely
something to look at
XML is great, JSON is better, but try to make your
APIs speak one or both languages
Standardize on a format for each object across your apps
Confidential & Proprietary
Q&A

Confidential & Proprietary

More Related Content

What's hot (19)

PDF
API Basics
Ritul Chaudhary
 
PDF
Boot camp 2010_app_engine_101
ikailan
 
PPTX
The API Facade Pattern: Technology - Episode 3
Apigee | Google Cloud
 
PPTX
Mobile APIs: Optimizing APIs for Many Devices
Apigee | Google Cloud
 
PDF
Business Applications Integration In The Cloud
Anna Brzezińska
 
PDF
Building the Eventbrite API Ecosystem
Mitch Colleran
 
PDF
Practical management of development & QA environments for SharePoint 2013
SharePointRadi
 
PPTX
Hybrid Mobile Development with Apache Cordova and
Ryan Cuprak
 
KEY
2011 aug-gdd-mexico-city-high-replication-datastore
ikailan
 
KEY
2011 august-gdd-mexico-city-rest-json-oauth
ikailan
 
PPTX
The API Facade Pattern: Overview - Episode 1
Apigee | Google Cloud
 
ODP
Introduction to Ruby on Rails
hasan2000
 
PPTX
Why akka
Sapardi Sapardi
 
PPTX
Huge: Running an API at Scale
Apigee | Google Cloud
 
PDF
Building Awesome APIs in Grails
clatimer
 
PPTX
The API Facade Pattern: People - Episode 4
Apigee | Google Cloud
 
PPTX
Realm 研究
ShengWen Chiou
 
PPTX
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien
 
PDF
Aws Technical Day 2015 - Amazon API Gateway
aws-marketing-il
 
API Basics
Ritul Chaudhary
 
Boot camp 2010_app_engine_101
ikailan
 
The API Facade Pattern: Technology - Episode 3
Apigee | Google Cloud
 
Mobile APIs: Optimizing APIs for Many Devices
Apigee | Google Cloud
 
Business Applications Integration In The Cloud
Anna Brzezińska
 
Building the Eventbrite API Ecosystem
Mitch Colleran
 
Practical management of development & QA environments for SharePoint 2013
SharePointRadi
 
Hybrid Mobile Development with Apache Cordova and
Ryan Cuprak
 
2011 aug-gdd-mexico-city-high-replication-datastore
ikailan
 
2011 august-gdd-mexico-city-rest-json-oauth
ikailan
 
The API Facade Pattern: Overview - Episode 1
Apigee | Google Cloud
 
Introduction to Ruby on Rails
hasan2000
 
Why akka
Sapardi Sapardi
 
Huge: Running an API at Scale
Apigee | Google Cloud
 
Building Awesome APIs in Grails
clatimer
 
The API Facade Pattern: People - Episode 4
Apigee | Google Cloud
 
Realm 研究
ShengWen Chiou
 
Chris O'Brien - Best bits of Azure for Office 365/SharePoint developers
Chris O'Brien
 
Aws Technical Day 2015 - Amazon API Gateway
aws-marketing-il
 

Similar to Data normalization across API interactions (20)

PDF
Enterprise PHP Architecture through Design Patterns and Modularization (Midwe...
Aaron Saray
 
PPT
Soa Symposium Expressing Service Capabilities Uniformly 2009 10 14 Bc
fuzzyBSc
 
PPTX
Real World API Design Using The Entity Framework Services
David McCarter
 
PDF
ddd.pdf
chanhluc2112
 
PPTX
Building Software Backend (Web API)
Alexander Goida
 
PPTX
Domain Driven Design
Araf Karsh Hamid
 
PPTX
APIs in Enterprise
Victor Olex
 
PDF
Enterprise REST
Ganesh Prasad
 
PDF
O'Reilly SACon San Jose, CA - 2019 - API design tutorial
Tom Hofte
 
PPTX
Autonomous microservices for a Financial System
INPAY
 
PPTX
How RESTful Is Your REST?
Abdelmonaim Remani
 
PPTX
A great api is hard to find
Dan Diephouse
 
PDF
Practical guide to building public APIs
Reda Hmeid MBCS
 
PDF
Beyond MVC: from Model to Domain
Jeremy Cook
 
PPTX
Software Development: Beyond Training wheels
Naveenkumar Muguda
 
PPTX
Service Architecture patterns
Vivek Singh
 
PPTX
Mtn view sql server nov 2014
EspressoLogic
 
PPTX
APIdays Open Banking & Fintech: Workshop - Financial Services Use Cases for APIs
Jeremy Brown
 
PPTX
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
NETFest
 
PPTX
API's - Successes to Replicate. Pitfalls to Avoid.
Inman News
 
Enterprise PHP Architecture through Design Patterns and Modularization (Midwe...
Aaron Saray
 
Soa Symposium Expressing Service Capabilities Uniformly 2009 10 14 Bc
fuzzyBSc
 
Real World API Design Using The Entity Framework Services
David McCarter
 
ddd.pdf
chanhluc2112
 
Building Software Backend (Web API)
Alexander Goida
 
Domain Driven Design
Araf Karsh Hamid
 
APIs in Enterprise
Victor Olex
 
Enterprise REST
Ganesh Prasad
 
O'Reilly SACon San Jose, CA - 2019 - API design tutorial
Tom Hofte
 
Autonomous microservices for a Financial System
INPAY
 
How RESTful Is Your REST?
Abdelmonaim Remani
 
A great api is hard to find
Dan Diephouse
 
Practical guide to building public APIs
Reda Hmeid MBCS
 
Beyond MVC: from Model to Domain
Jeremy Cook
 
Software Development: Beyond Training wheels
Naveenkumar Muguda
 
Service Architecture patterns
Vivek Singh
 
Mtn view sql server nov 2014
EspressoLogic
 
APIdays Open Banking & Fintech: Workshop - Financial Services Use Cases for APIs
Jeremy Brown
 
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
NETFest
 
API's - Successes to Replicate. Pitfalls to Avoid.
Inman News
 
Ad

More from Cloud Elements (20)

PDF
10 Step Guide to API Integrations
Cloud Elements
 
PDF
How to Build Platforms, Not Products
Cloud Elements
 
PDF
State of API Integration Report 2017
Cloud Elements
 
PDF
Cloud Elements | State of API Integration Report 2018
Cloud Elements
 
PPTX
All Things API Presentation - Gordon Weakleim [HomeAway]
Cloud Elements
 
PDF
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
Cloud Elements
 
PDF
Email As A Datasource
Cloud Elements
 
PDF
Lean Product Development 101
Cloud Elements
 
PPTX
Building Event Driven API Services Using Webhooks
Cloud Elements
 
PPTX
Lean Product Development 101
Cloud Elements
 
PPT
'Scalable Logging and Analytics with LogStash'
Cloud Elements
 
PDF
The Entrepreneurial Methodology: How engineers can harness the madness in a n...
Cloud Elements
 
PPTX
Cloud Elements Documents Hub
Cloud Elements
 
PDF
Filtering From the Firehose: Real Time Social Media Streaming
Cloud Elements
 
PPTX
Lean Product Development for Startups- Denver Startup Week
Cloud Elements
 
PPTX
Appx for Developers
Cloud Elements
 
PPTX
Lean product development for startups
Cloud Elements
 
PDF
Using a simple Ruby program to interface with quickly provisioned cloud appli...
Cloud Elements
 
PDF
Money & Bitcoin & the Cloud: It's all just data streams, anyway!
Cloud Elements
 
PPTX
API Versioning in the Cloud
Cloud Elements
 
10 Step Guide to API Integrations
Cloud Elements
 
How to Build Platforms, Not Products
Cloud Elements
 
State of API Integration Report 2017
Cloud Elements
 
Cloud Elements | State of API Integration Report 2018
Cloud Elements
 
All Things API Presentation - Gordon Weakleim [HomeAway]
Cloud Elements
 
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
Cloud Elements
 
Email As A Datasource
Cloud Elements
 
Lean Product Development 101
Cloud Elements
 
Building Event Driven API Services Using Webhooks
Cloud Elements
 
Lean Product Development 101
Cloud Elements
 
'Scalable Logging and Analytics with LogStash'
Cloud Elements
 
The Entrepreneurial Methodology: How engineers can harness the madness in a n...
Cloud Elements
 
Cloud Elements Documents Hub
Cloud Elements
 
Filtering From the Firehose: Real Time Social Media Streaming
Cloud Elements
 
Lean Product Development for Startups- Denver Startup Week
Cloud Elements
 
Appx for Developers
Cloud Elements
 
Lean product development for startups
Cloud Elements
 
Using a simple Ruby program to interface with quickly provisioned cloud appli...
Cloud Elements
 
Money & Bitcoin & the Cloud: It's all just data streams, anyway!
Cloud Elements
 
API Versioning in the Cloud
Cloud Elements
 
Ad

Recently uploaded (20)

PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PPTX
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PPTX
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PDF
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Automating Feature Enrichment and Station Creation in Natural Gas Utility Net...
Safe Software
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Automating Feature Enrichment and Station Creation in Natural Gas Utility Net...
Safe Software
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 

Data normalization across API interactions

  • 1. Data Normalization for API Interactions
  • 2. Importance of APIs Allows you to use software more selectively Leverage best of breed apps in your app Provide value to your users by focusing your resources on your app Confidential & Proprietary
  • 3. APIs are nice and all, but… Endpoints are not standardized. What! You don’t have RESTful API? Same type of data represented in different formats with different names How can I reuse without abuse? My app’s APIs are fast becoming unusable and unmaintainable Confidential & Proprietary
  • 4. Do you really want this? What, I’ve to put this all together? Why don’t I just write my own storage solution and my own CRM system? Dynamics Account SFDC Account Element Element Box Folder Confidential & Proprietary Sharepoint Document Google Drive Folder
  • 5. What if you had this? Account Folder Document Integration and Normalization Element Element Confidential & Proprietary
  • 7. Use Best Practices for Data Normalization No matter the endpoint protocol, provide a uniform protocol from your app, preferably REST with JSON Transform data from an endpoint into a normalized structure. Configure your transformations and not code them Always provide direct access to the endpoint data, so your app does not become a throttle Provide customization, but not at the cost of multi-tenancy Confidential & Proprietary
  • 8. Multi-tenancy via Configuration Your Application Your Customers Toyota Users Normalization Configuration SFDC 1 Toyota SFDC 2 BestBuy Users BestBuy SFDC 3 Whirlpool Users Whirlpool Sugar Confidential & Proprietary Vendor
  • 9. Custom Transforms and Rules Canonical SFDC mapping CRM Hub - Create Account Transformation Result Create CRM Account 4 API JSON Input 5 Transformation 6 3 Custom SFDC mapping script 2 Custom SFDC mapping Confidential & Proprietary 1
  • 10. Data Normalization works for me I have one view of an Account object, whether it’s from Salesforce.com or Microsoft Dynamics I can use a Document object in a uniform way regardless of the Storage provider And I can switch my Cloud Storage provider at any time Which should allow me to write code in my app to hook these all together! Wait a minute…that can be time consuming. Is there some other way? Confidential & Proprietary
  • 11. Which leads to API Interactions I want my Account to be linked to the contractual Documents But, I don’t want to save any of this information in my application But, can I achieve these interactions without writing messy application logic If my data is already normalized, why can’t something stitch is all together! Confidential & Proprietary
  • 12. Normalized Data can Interact Use an asynchronous model for interactions, the matrix for point-to-point interactions will become unmanageable Don’t write your own Message Bus, use an off the shelf system that can be extended Provide a facility for customizable interaction rules Plan for scale, especially when dealing with Social API endpoints Be agile, don’t try to replace all the app logic in one attempt Confidential & Proprietary
  • 13. Embrace Standards True REST may not always make sense for your application, but try your best to adhere to the standard RAML is now open sourced, definitely something to look at XML is great, JSON is better, but try to make your APIs speak one or both languages Standardize on a format for each object across your apps Confidential & Proprietary