OData Hackathon Challenge
-
Upload
sumit-sarkar -
Category
Technology
-
view
96 -
download
0
Transcript of OData Hackathon Challenge
OData Hackathon Challenge at APIWorld + Integrate 2016Sponsored by Progress DataDirect
Sumit Sarkar, Chief Data Evangelist Saikrishna Teja Bobba, Developer Evangelist
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.2
AGENDA
OVERVIEW OF ODATA OASIS STANDARD
URL CONVENTIONS
ADOPTERS IN ANALYTICS AND SUPPORTING ARCHITECTURES
ODATA @ PROGRESS
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.3
OVERVIEW OF ODATA OASIS STANDARD
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.4
An open protocol to allow the creation and consumption of queryable and interoperable RESTful APIs in a simple and standard way.
• Started by Microsoft in 2007
• Ratified as an OASIS standard on February, 2014
Progress was first member of OData Technical Committee following Microsoft
What is OData?
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.5
REST is great, But..
It’s a style – not a standard
Metadata support?
Limited querying capabilities
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.6
Why OData?
Operations built on REST principles
Uniform URL conventions
Surfaces metadata by default
Interoperability
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.7
http://services.odata.org/OData/OData.svc
\__________________________________/
|
service root URI
http://services.odata.org/OData/OData.svc/Category(1)/Products?$top=2&$orderby=name
\__________________________________/ \________________/ \__________________/
| | |
service root URI resource path query options
URL Conventions
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.8
URL Query Conventions
$SELECT /Products?$select=*,Category/Name
/Suppliers?$filter=Address/City eq 'Redmond’
/Products?$orderby=ReleaseDate asc, Rating desc
/Products?$select=*,Category/Name&$expand=Category
$FILTER
$ORDERBY
$EXPAND
/Products?$top=5&$skip=2$TOP $SKIP
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.9
OData Libs - http://www.odata.org/libraries/
.NET, Java, Javascript, C++
OData4j
Apache Olingo
ODataJS
Node-odata
ODataCpp
RESTier
WCF Data Services
Visual Studio Lightswitch
ODataPy
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.10
ADOPTERS: POWER IN NUMBERS
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.11
Broad Adoption
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.12
ODATA @ PROGRESS
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.13
Progress DataDirect Cloud
OData
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.14
Project Mustang Beta
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.15
Other areas of Progress adopting OData
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.16
CHALLENGE
© 2016 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.17
Integrate 2016 Hackathon Challenge [http://bit.ly/hackodata]
Build a skill set for voice assistant services like Amazon Echo(Alexa) or Microsoft Cortana making the best use of OData API.
Challenge RulesYou have to build the skill that can connect to atleast two CRM solutions and the questions that you ask should be interoperable between the CRM Solutions. Example CRM Solutions that you can work on are Salesforce, Microsoft Dynamics CRM and Sugar CRM.
You have to consume OData API in order to develop the skill. We recommend using Progress DataDirect Cloud to generate OData feed from the CRM Solutions that you are interested with.
If you have any questions or if you want to talk to our team, we are also available on Slack