SlideShare a Scribd company logo
Building RESTful Applications  with the Open Data Protocol Todd Anglin Chief Evangelist, Telerik Level:  Intermediate
Introductions Todd Anglin Chief Evangelist, Telerik Microsoft MVP ASP Insider President NHDNUG & O’Reilly Author @toddanglin TelerikWatch.com
The Plan
What you should learn today: What is  REST/OData Who created  REST/OData Why use  REST/OData When should you use  REST/OData Where can you find  REST/OData
How did we get here?
“ There is a  vast amount of data  available today and data is now being collected and stored at a rate never seen before. Much, if not most, of this data however is  locked  into specific applications or formats and  difficult to access  or to  integrate  into new uses.”  - OData.org
State of Data & Services Internal  SQL My App App Data CMS Share Point Cloud Custom API SQL JSON Services FB
What is REST? Re presentational  S tate  T ransfer What is the biggest REST implementation? World Wide Web! REST is NOT a standard! (But it uses standards) HTTP + URLs + XML*
REST Principles
REST Illustrated Magic Kingdom (Resource) http://disneyworld.com/parks/magic-kingdom Resource URL Representation URL Click (State Transfer) Representation
RESTful Services Core idea: let's have  computers  use the web the way  humans  do
Alternatives to REST Most common: SOAP and RPC Why use SOAP (vs REST)? Enterprise security features (WS-Security) ACID Transactions (WS-AtomicTransaction) Message error recovery (WS-ReliableMessaging) SOAP  services focus on exposing  application logic REST  services focus on exposing  “data”  (or CRUD operations on data)
OData does for  data  what REST does for  services
(Finally!) What is OData? HTTP REST-based services AtomPub Data structure JSON  Data delivery format Data silo buster
What do web services require? A way to discover a service provider A way to discover available services at a provider A way to describe how to interface with service A way to execute functions provided by a service A standard messaging format A way to represent the data in exchange
Why? Interoperability Predictable access to data from any system Gaining popularity SharePoint 2010 SQL Server 2008 R2 IBM WebSphere eXtreme Scale Azure Table Storage Telerik TeamPulse …
REST AND ODATA IN ACTION DEMO
Consuming OData Windows Phone 7 / iPhone / Mobile AJAX / Javascript  PHP / Java / .NET  Silverlight  PowerPivot  Simple HTTP Requests (GET, POST, PUT, DELETE) More…
Visual Studio Tools Open Data Protocol Visualizer
CONSUMING EXISTING ODATA DEMO
Creating OData Service As simple as returning proper XML/JSON No specific platform requirements Ways to build: Using Visual Studio tools (WCF Data Services) SharePoint Lists Azure Table Storage Manually produce XML
WCF Data Services (Astoria) Build RESTful services on Microsoft platform Roots of OData protocol Built on WCF Supports ATOM (XML) and JSON data representations Automates REST for data Anything that implements IQueryable<T> or IUpdatable<T> EX:  EF, LinqToSQL, 3 rd  party ORM, etc.
WCF DATA SERVICES BASICS DEMO
Service Operations Functions exposed by OData Similar to RPC Accept zero or more primitive type input params Can return scalar value [WebGet]  is used for an addressable query [WebInvoke]  is used for insert, update, and delete http://.../OData.svc/ GetProductsByRating ?rating=5
Interceptors Query Interceptors Logic runs when resource is requested Uses:  limit the data viewed, log, perform security check Change Interceptors Logic runs when a change (Add/Edit/Delete) request is made (HTTP PUT/POST/DELETE)
SERVICE OPS & INTERCEPTORS DEMO
Securing Data Services Remember! REST is NOT a protocol, it’s a pattern Same security that applies to HTTP, AtomPub, JSON Other options: EntitySetRights Hiding sensitive data with [IgnoreProperties] Infrastructure security – SSL, IP Filtering QueryInterceptors
OData & SharePoint 2010 ListData.svc Out-of-the-box OData access to SharePoint data Data is NOT anonymously available! http://siteurl /_vti_bin/listdata.svc /Announcements
When to REST? Stateless web services Scalable web services (via HTTP caching) Mutually understood context (OData) Restricted bandwidth (Mobile) Always, except when there is a reason NOT to REST
[Q & A] Thanks! Gracias! Mersi! Blagodarya! @toddanglin telerikwatch.com [email_address]

More Related Content

What's hot (20)

PPTX
Open Data Protocol (OData)
Pistoia Alliance
 
PPTX
OData Introduction and Impact on API Design (Webcast)
Apigee | Google Cloud
 
PPTX
OData Services
Jovan Popovic
 
PPTX
Practical OData
Vagif Abilov
 
PPTX
Odata - Open Data Protocol
Khaled Musaied
 
PPTX
Modern REST APIs for Enterprise Databases - OData
Nishanth Kadiyala
 
PPTX
OData for iOS developers
Glen Gordon
 
PPTX
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
Woodruff Solutions LLC
 
PPTX
OData, External objects & Lightning Connect
Prasanna Deshpande ☁
 
PPTX
Unerstanding and Using RESTful APIs
SocialDevCamp Chicago
 
PPTX
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
Pat Patterson
 
PPT
Deploying RDF Linked Data via Virtuoso Universal Server
rumito
 
PPTX
Understanding and Using Rest APIs (SocialDevCamp Chicago 2009)
Pete Morano
 
PDF
Representational State Transfer (REST)
David Krmpotic
 
PPTX
Learning How to Shape and Configure an OData Service for High Performing Web ...
Woodruff Solutions LLC
 
PDF
REST - Representational State Transfer
Peter R. Egli
 
PPTX
RESTFul Web API Services @ DotNetToscana
Matteo Baglini
 
PPTX
JSON and REST
Robert MacLean
 
PPT
Solving Real Problems Using Linked Data
rumito
 
Open Data Protocol (OData)
Pistoia Alliance
 
OData Introduction and Impact on API Design (Webcast)
Apigee | Google Cloud
 
OData Services
Jovan Popovic
 
Practical OData
Vagif Abilov
 
Odata - Open Data Protocol
Khaled Musaied
 
Modern REST APIs for Enterprise Databases - OData
Nishanth Kadiyala
 
OData for iOS developers
Glen Gordon
 
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
Woodruff Solutions LLC
 
OData, External objects & Lightning Connect
Prasanna Deshpande ☁
 
Unerstanding and Using RESTful APIs
SocialDevCamp Chicago
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
Pat Patterson
 
Deploying RDF Linked Data via Virtuoso Universal Server
rumito
 
Understanding and Using Rest APIs (SocialDevCamp Chicago 2009)
Pete Morano
 
Representational State Transfer (REST)
David Krmpotic
 
Learning How to Shape and Configure an OData Service for High Performing Web ...
Woodruff Solutions LLC
 
REST - Representational State Transfer
Peter R. Egli
 
RESTFul Web API Services @ DotNetToscana
Matteo Baglini
 
JSON and REST
Robert MacLean
 
Solving Real Problems Using Linked Data
rumito
 

Viewers also liked (18)

PPTX
Edge of the Web
Todd Anglin
 
PPTX
Making HTML5 Work Everywhere
Todd Anglin
 
PPTX
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Todd Anglin
 
PPT
HTML5 Mullet: Forms & Input Validation
Todd Anglin
 
PDF
Using HTML5 to Build Mobile Apps
Todd Anglin
 
PPSX
Rest api standards and best practices
Ankita Mahajan
 
PPTX
HTML5 Bootcamp: Essential HTML, CSS, & JavaScript
Todd Anglin
 
PDF
NativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
Todd Anglin
 
PPTX
Introduction to SAP Gateway and OData
Chris Whealy
 
PDF
Los Angeles Lakers tops, Miami Heat and Chicago Bulls follow as the most soci...
Simplify360
 
PPTX
10 Lessons Graphic Designers Can Learn From Sports Celebrities
ZillionDesigns
 
PDF
Games Sense to Coaching Basketball
Chris Oliver
 
PDF
A World of Talent: What Perennial NBA Contenders Teach Us About Collaboration
Cureo
 
PPTX
GraphTalks Rome - Selecting the right Technology
Neo4j
 
PDF
Webinar: RDBMS to Graphs
Neo4j
 
PPTX
Apple Inc Presentatioin
2AM
 
PPTX
Design Beautiful REST + JSON APIs
Stormpath
 
PDF
Mobile-First SEO - The Marketers Edition #3XEDigital
Aleyda Solís
 
Edge of the Web
Todd Anglin
 
Making HTML5 Work Everywhere
Todd Anglin
 
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Todd Anglin
 
HTML5 Mullet: Forms & Input Validation
Todd Anglin
 
Using HTML5 to Build Mobile Apps
Todd Anglin
 
Rest api standards and best practices
Ankita Mahajan
 
HTML5 Bootcamp: Essential HTML, CSS, & JavaScript
Todd Anglin
 
NativeScript: Cross-Platform Mobile Apps with JavaScript and Angular
Todd Anglin
 
Introduction to SAP Gateway and OData
Chris Whealy
 
Los Angeles Lakers tops, Miami Heat and Chicago Bulls follow as the most soci...
Simplify360
 
10 Lessons Graphic Designers Can Learn From Sports Celebrities
ZillionDesigns
 
Games Sense to Coaching Basketball
Chris Oliver
 
A World of Talent: What Perennial NBA Contenders Teach Us About Collaboration
Cureo
 
GraphTalks Rome - Selecting the right Technology
Neo4j
 
Webinar: RDBMS to Graphs
Neo4j
 
Apple Inc Presentatioin
2AM
 
Design Beautiful REST + JSON APIs
Stormpath
 
Mobile-First SEO - The Marketers Edition #3XEDigital
Aleyda Solís
 
Ad

Similar to Building RESTful Applications with OData (20)

PPTX
WCF Data Services - Bandung Charity Event - 2010
Andri Yadi
 
PPTX
Connecting to Data from Windows Phone 8
Woodruff Solutions LLC
 
PPTX
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Woodruff Solutions LLC
 
PPTX
Connecting to Data from Windows Phone 8
Woodruff Solutions LLC
 
PPTX
Gaining the Knowledge of the Open Data Protocol (OData)
Woodruff Solutions LLC
 
PPTX
Gaining the Knowledge of the Open Data Protocol (OData)
Woodruff Solutions LLC
 
PPTX
Building nTier Applications with Entity Framework Services (Part 2)
David McCarter
 
PPTX
Building nTier Applications with Entity Framework Services (Part 2)
David McCarter
 
PPTX
OData – Super Cola W3
Comunidade NetPonto
 
PPTX
Building Software Backend (Web API)
Alexander Goida
 
PPTX
DPR202 Open Data for the Open Web
Ronald Widha
 
PPTX
Social Photos - My presentation at Microsoft Tech Day
TechMaster Vietnam
 
PPTX
Using OData to build great customer experiences on any device by Lance Olson
GeekWire
 
PPTX
Building RESTfull Data Services with WebAPI
Gert Drapers
 
PPTX
Producing an OData feed in 10 minutes
Woodruff Solutions LLC
 
PDF
WCF Data Services - Office Business Application &amp; iPhone
Andri Yadi
 
PPTX
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Eric D. Boyd
 
PPTX
W8/WP8 App Dev for SAP, Part 2: Microsoft OData Application Development
SAP PartnerEdge program for Application Development
 
PDF
RefCard API Architecture Strategy
OCTO Technology
 
PPTX
Introduction to o data
Venkatesh Narayanan
 
WCF Data Services - Bandung Charity Event - 2010
Andri Yadi
 
Connecting to Data from Windows Phone 8
Woodruff Solutions LLC
 
Connecting to Data from Windows Phone 8 VSLive! Redmond 2013
Woodruff Solutions LLC
 
Connecting to Data from Windows Phone 8
Woodruff Solutions LLC
 
Gaining the Knowledge of the Open Data Protocol (OData)
Woodruff Solutions LLC
 
Gaining the Knowledge of the Open Data Protocol (OData)
Woodruff Solutions LLC
 
Building nTier Applications with Entity Framework Services (Part 2)
David McCarter
 
Building nTier Applications with Entity Framework Services (Part 2)
David McCarter
 
OData – Super Cola W3
Comunidade NetPonto
 
Building Software Backend (Web API)
Alexander Goida
 
DPR202 Open Data for the Open Web
Ronald Widha
 
Social Photos - My presentation at Microsoft Tech Day
TechMaster Vietnam
 
Using OData to build great customer experiences on any device by Lance Olson
GeekWire
 
Building RESTfull Data Services with WebAPI
Gert Drapers
 
Producing an OData feed in 10 minutes
Woodruff Solutions LLC
 
WCF Data Services - Office Business Application &amp; iPhone
Andri Yadi
 
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Eric D. Boyd
 
W8/WP8 App Dev for SAP, Part 2: Microsoft OData Application Development
SAP PartnerEdge program for Application Development
 
RefCard API Architecture Strategy
OCTO Technology
 
Introduction to o data
Venkatesh Narayanan
 
Ad

More from Todd Anglin (10)

PPTX
Developing a Modern Mobile App Strategy
Todd Anglin
 
PPTX
5 Tips for Better JavaScript
Todd Anglin
 
PPTX
50in50: Resources for HTML5, CSS3, & JavaScript Developers
Todd Anglin
 
PPTX
HTML5 and CSS3 Techniques You Can Use Today
Todd Anglin
 
PPTX
HTML5 for Tablets and Mobile
Todd Anglin
 
PPTX
Doing More with LESS for CSS
Todd Anglin
 
PPT
Building a Testable Data Access Layer
Todd Anglin
 
PPTX
HTML5 and CSS3 Techniques You Can Use Today
Todd Anglin
 
PPTX
The Rich Standard: Getting Familiar with HTML5
Todd Anglin
 
PPTX
What’s New in ASP.NET 4
Todd Anglin
 
Developing a Modern Mobile App Strategy
Todd Anglin
 
5 Tips for Better JavaScript
Todd Anglin
 
50in50: Resources for HTML5, CSS3, & JavaScript Developers
Todd Anglin
 
HTML5 and CSS3 Techniques You Can Use Today
Todd Anglin
 
HTML5 for Tablets and Mobile
Todd Anglin
 
Doing More with LESS for CSS
Todd Anglin
 
Building a Testable Data Access Layer
Todd Anglin
 
HTML5 and CSS3 Techniques You Can Use Today
Todd Anglin
 
The Rich Standard: Getting Familiar with HTML5
Todd Anglin
 
What’s New in ASP.NET 4
Todd Anglin
 

Recently uploaded (20)

PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
July Patch Tuesday
Ivanti
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 

Building RESTful Applications with OData

  • 1. Building RESTful Applications with the Open Data Protocol Todd Anglin Chief Evangelist, Telerik Level: Intermediate
  • 2. Introductions Todd Anglin Chief Evangelist, Telerik Microsoft MVP ASP Insider President NHDNUG & O’Reilly Author @toddanglin TelerikWatch.com
  • 4. What you should learn today: What is REST/OData Who created REST/OData Why use REST/OData When should you use REST/OData Where can you find REST/OData
  • 5. How did we get here?
  • 6. “ There is a vast amount of data available today and data is now being collected and stored at a rate never seen before. Much, if not most, of this data however is locked into specific applications or formats and difficult to access or to integrate into new uses.”  - OData.org
  • 7. State of Data & Services Internal SQL My App App Data CMS Share Point Cloud Custom API SQL JSON Services FB
  • 8. What is REST? Re presentational S tate T ransfer What is the biggest REST implementation? World Wide Web! REST is NOT a standard! (But it uses standards) HTTP + URLs + XML*
  • 10. REST Illustrated Magic Kingdom (Resource) http://disneyworld.com/parks/magic-kingdom Resource URL Representation URL Click (State Transfer) Representation
  • 11. RESTful Services Core idea: let's have computers use the web the way humans do
  • 12. Alternatives to REST Most common: SOAP and RPC Why use SOAP (vs REST)? Enterprise security features (WS-Security) ACID Transactions (WS-AtomicTransaction) Message error recovery (WS-ReliableMessaging) SOAP services focus on exposing application logic REST services focus on exposing “data” (or CRUD operations on data)
  • 13. OData does for data what REST does for services
  • 14. (Finally!) What is OData? HTTP REST-based services AtomPub Data structure JSON Data delivery format Data silo buster
  • 15. What do web services require? A way to discover a service provider A way to discover available services at a provider A way to describe how to interface with service A way to execute functions provided by a service A standard messaging format A way to represent the data in exchange
  • 16. Why? Interoperability Predictable access to data from any system Gaining popularity SharePoint 2010 SQL Server 2008 R2 IBM WebSphere eXtreme Scale Azure Table Storage Telerik TeamPulse …
  • 17. REST AND ODATA IN ACTION DEMO
  • 18. Consuming OData Windows Phone 7 / iPhone / Mobile AJAX / Javascript PHP / Java / .NET Silverlight PowerPivot Simple HTTP Requests (GET, POST, PUT, DELETE) More…
  • 19. Visual Studio Tools Open Data Protocol Visualizer
  • 21. Creating OData Service As simple as returning proper XML/JSON No specific platform requirements Ways to build: Using Visual Studio tools (WCF Data Services) SharePoint Lists Azure Table Storage Manually produce XML
  • 22. WCF Data Services (Astoria) Build RESTful services on Microsoft platform Roots of OData protocol Built on WCF Supports ATOM (XML) and JSON data representations Automates REST for data Anything that implements IQueryable<T> or IUpdatable<T> EX: EF, LinqToSQL, 3 rd party ORM, etc.
  • 23. WCF DATA SERVICES BASICS DEMO
  • 24. Service Operations Functions exposed by OData Similar to RPC Accept zero or more primitive type input params Can return scalar value [WebGet] is used for an addressable query [WebInvoke] is used for insert, update, and delete http://.../OData.svc/ GetProductsByRating ?rating=5
  • 25. Interceptors Query Interceptors Logic runs when resource is requested Uses: limit the data viewed, log, perform security check Change Interceptors Logic runs when a change (Add/Edit/Delete) request is made (HTTP PUT/POST/DELETE)
  • 26. SERVICE OPS & INTERCEPTORS DEMO
  • 27. Securing Data Services Remember! REST is NOT a protocol, it’s a pattern Same security that applies to HTTP, AtomPub, JSON Other options: EntitySetRights Hiding sensitive data with [IgnoreProperties] Infrastructure security – SSL, IP Filtering QueryInterceptors
  • 28. OData & SharePoint 2010 ListData.svc Out-of-the-box OData access to SharePoint data Data is NOT anonymously available! http://siteurl /_vti_bin/listdata.svc /Announcements
  • 29. When to REST? Stateless web services Scalable web services (via HTTP caching) Mutually understood context (OData) Restricted bandwidth (Mobile) Always, except when there is a reason NOT to REST
  • 30. [Q & A] Thanks! Gracias! Mersi! Blagodarya! @toddanglin telerikwatch.com [email_address]