Your SlideShare is downloading. ×
0
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

SPTECHCON - Get Some REST - Taking Advantage of the SharePoint 2013 REST API

491

Published on

Published in: Technology, Design
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
491
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
10
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Taking Advantage of the SharePoint 2013 REST API
  • 2. CKS:DEV The SharePoint Cowboy Patterns & Practices Eric Shupps www.sharepointcowboy.com eshupps@binarywave.com facebook.com/sharepointcowboy @eshupps
  • 3. Introduction Basic Operations JavaScript Endpoints Advanced Methods Windows 8
  • 4. INTRODUCTION
  • 5. HTTP-based web service architecture that uses nouns and verbs to define operations Noun: “Items” Verbs: GET, POST, PUT, DELETE OData provides metadata, object typing and query semantics for underlying data structure (WCF data services) /items(0) Client Object Model service (client.svc) processes queries, interacts with server OM, returns formatted response (JSON, XML) /items/GetByTitle(‘foo’)
  • 6. Client.svc Server OM Content DB READ CREATE UPDATE DELETE POST GET PUT, MERGE, DELETE
  • 7. http://contoso/_api/items/GetById(1)?$select=Title,ID Location Service Resource Path Query Options
  • 8. Local Current Context Request Digest Remote OAuth Access Token Cross Domain Request Executor SP.WebProxy HTTP WebRequest Context Info Cross Domain
  • 9. ENDPOINTS
  • 10. Site Web Publishing User Profiles Webs Features Event Receivers Users Profiles Activity Lists Items Pages Variations Navigation Query Results Suggestions Search Taxonomy Managed Metadata
  • 11. BASIC OPERATIONS
  • 12. • SP.RequestExecutor • accept: "application/json;odata=verbose"
  • 13. http://<site collection>/<site>/_api/sites/features/GetById(guid’<value>’) http://<site collection>/<site>/_api/sites/eventreceivers View Event Receivers http://<site collection>/<site>/_api/web/webinfos/add { 'd' :{ 'parameters': { '__metadata': {'type': 'SP.WebInfoCreationInformation' }, 'Url': 'RestSubWeb', 'Title': 'RestSubWeb', 'Description': 'rest created web', 'Language':1033, 'WebTemplate':'sts', 'UseUniquePermissions':false} }} Create a Site Get Feature
  • 14. http://<site collection>/<site>/_api/lists Get All Lists http://<site collection>/<site>/_api/lists/GetByTitle(‘Shared Documents’) Get List http://<site collection>/<site>/_api/lists/GetByTitle(‘Shared Documents’)/items/GetById(0) Get List Item http://<site collection>/<site>/_api/lists/GetByTitle(‘Shared Documents’)/items/ GetById(1)?$select=Title,ID Get List Item with Specific Properties
  • 15. http://<site collection>/<site>/_api/search/query?queryText=‘Value’ Simple Term http://<site collection>/<site>/_api/search/query?queryText=‘PreferredName: Robert Smith’ Item Property http://<site collection>/<site>/_api/search/suggest?queryText=‘quarterly sales’ Suggestions
  • 16. http://<site collection>/<site>/_api/social.following/followed Get Followed Users http://<siteCollection>/<site>/_api/social.following/my/followeddocumentsuri Get Followed Documents http://<site collection>/<site>/_api/sp.userprofiles.peoplemanager/getmysuggestions Get Suggestions http://<siteCollection>/<site>/_api/sp.userprofiles.peoplemanager/ getpeoplefollowedby(accountName=@v)?@v='domainuser' Get Followers
  • 17. ADVANCED METHODS
  • 18. http://<site>/_api/Web/Lists(guid’<value>′)/Items(1)/FieldValuesAsHtml HTML Values http://<site>/_api/web/lists/getbytitle(‘Products’)/items()/?$select=Title, Price,effectivebasepermissions Get Permissions http://<site>/_api/web/lists/getbytitle('Products')/items()?$select=Title, Price,Supplier_/Title&$expand=Supplier_/Title Join
  • 19. http://<site>/_api/web/lists/getbytitle(‘Products’)/items/?$filter=Price gt 30000 Filter with Comparison http://<site>/_api/web/lists/getbytitle(‘Products’)/items()? $select=Title,Price,Supplier_/Title&$expand=Supplier_/Title&$filter=Supplier_/Title eq ‘Acme’ Join with Filter http://<site collection>/<site>/_api/web/lists('<guid>')/items$top=10 Top ‘N’ Results
  • 20. url: http://site url/_api/web/lists/GetByTitle(‘Test')/items method: POST body: { '__metadata': { 'type': 'SP.Data.TestListItem' }, 'Title': 'Test'} headers: Authorization = "Bearer " + accessToken X-RequestDigest = form digest value accept: "application/json;odata=verbose" content-type: "application/json;odata=verbose" content-length:1024 Create a List Item url: http://site url/_api/web/lists/GetByTitle(‘Test')/items(item id) method: POST body: { '__metadata': { 'type': 'SP.Data.TestListItem' }, 'Title': 'TestUpdated'} headers: Authorization = "Bearer " + accessToken X-RequestDigest = form digest value “IF-MATCH”: etag or “*” “X-HTTP-Method”:”MERGE”, accept: "application/json;odata=verbose" content-type: "application/json;odata=verbose" content-length:1024 Edit a List Item
  • 21. • Used to prevent replay attacks • Updates will fail without digest value • Local • $("#__REQUESTDIGEST").val() • Remote • POST to /_api/contextinfo
  • 22. Description Link Programming Using the SharePoint 2013 REST Service http://bit.ly/TUwC9N OData URI Conventions http://bit.ly/Ytgdz4 Using the SharePoint 2013 REST Service http://bit.ly/YPHif5 SharePoint 2013 Search REST API http://bit.ly/ZqzOuM Configuring SharePoint 2013 Search REST for Anonymous Users http://bit.ly/152vFoy SharePoint 2013 REST TypeScript Library http://sprestts.codeplex.com

×