I often face the problem that I have to interact with the Sharepoint from the outside. In this article I will give you a short overview of all existing ways to interact with Sharepoint (that I know)
Overview
Welche API ist jedoch die richtige. Hierfür bietet MS auch eine Entscheidungshilfe (Choose the right API set in SharePoint)
Remote Procedure Call Protocol (RPC)
- Wurde in Sharpoint 2002 eingeführt
 - Remote Procedure Call Protocol
 
Sharepoint REST API v1
- Die Sharepoint REST API wurde 2010 eingeführt und mit 2013 wesentlich verändert
 - REST API von Sharepoint 2010 ist das ListData Web Service
 - Sharepoint 2013 führte die beiden /_api/lists/ und /_api/web Endpunkte ein
 

Sharepoint REST API 2010
Sharepoint REST API 2013

Sharepoint REST API V2
- Diese API wurde für Microsoft Graph entwickelt und ist für die Integration in Microsoft Graph notwendig
 

- Die Verwendung der REST API V2 ist aber nicht auf Mirosoft Graph begreznt
 
Sharepoint Clientseitige Bibliotheken
Sharepoint Client Object Model (CSOM)
Javascript Client Object Model (JSOM)
- das JSOM gibt es nur 
- on prmies
 - Sharepoint Online (Classic Experience)
 
 - Complete basic operations using JavaScript library code in SharePoint
 
Datenabruf mit PowerShell
serverseitige API
- Der direkte Datenabruf über das serverseitige API sollte wenn möglich vermieden werden, da dazu Lösungen direkt auf dem SharePoint-Server installiert werden müssen
 - Das Server Object Model ist die umfangreichste API.
 - Beispiele / Anleitungen 
 
Beispiel: Liste alle Listen einer Seite auf:
using Microsoft.SharePoint; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SharePointData { class Program { static void Main(string[] args) { using (var site = new SPSite("http://server/sites/site")) { var web = site.RootWeb; Console.WriteLine(web.Title); var lists = web.Lists; foreach (SPList list in lists) { Console.WriteLine("\t" + list.Title); } Console.ReadLine(); } } } }


