OneNote-Entwicklung
Gilt für: Heimanwender-Notizbücher in OneDrive | Unternehmensnotizbücher in Office 365
OneNote ist ein beliebtes Notizentool, das online und auf vielen Telefonen und Tablet-PCs verfügbar ist. Durch die Integration Ihrer Apps in OneNote ist es einfacher denn je, leistungsfähige Apps auf Ihren bevorzugten Plattformen zu erstellen und Millionen von Benutzern weltweit zu erreichen.
Nutzen Sie die Vorteile der Notizbuch-, Abschnitts- und Seitenhierarchie und der benutzerfreundlichen API von OneNote, um Ihre Benutzer bei der Planung und Organisation von Ideen und Informationen zu unterstützen.
Hinweis
Wenn Sie die OneNote-API verwenden, stimmen Sie den Nutzungsbedingungen von Microsoft API zu.
Plattformübersicht
Der OneNote-Dienst läuft auf der Microsoft-Cloud und bietet eine RESTful-Schnittstelle für den programmatischen Zugriff auf OneNote-Inhalte. Die OneNote-API ist leicht und einfach—sie basiert auf JSON, HTML und OData, sodass Sie sie mit jeder Sprache oder Plattform verwenden können, die HTTP-Anforderungen unterstützt.
Dies ist eine einfache Ansicht des OneNote-API-Entwicklungsstapels.
Zuerst muss Ihr Benutzer authentifiziert sein und Zugriff auf Ihre App gewähren. Dann erhalten Sie ein Zugriffstoken, mit dem Sie mit OneNote-Inhalten interagieren können. Neben der CRUD-Unterstützung für OneNote-Ressourcen bietet die API auch Funktionen wie optische Zeichenerkennung (OCR), Volltextsuche und Visitenkartenextraktionen.
Tipp
Sie können SDKs verwenden, um den Authentifizierungsprozess zu vereinfachen.
Verwenden der OneNote-API
Um die OneNote-API zu verwenden, senden Sie HTTP-Anforderungen an bestimmte Endpunkte über die Stamm-URL von OneNote:
https://www.onenote.com/api/{version}/{location}/notes/...
Mit der OneNote-API können Sie beispielsweise Seiten in persönlichen, Website- und Gruppen-Notizbüchern erstellen, anzeigen und verwalten. Um Ihnen eine Vorstellung davon zu geben, wie die API funktioniert, finden Sie hiernach eine einfache POST-Anforderung, die eine Seite im Standard-Notizbuch des aktuellen Benutzers erstellt.
POST https://www.onenote.com/api/v1.0/me/notes/pages
Authorization: Bearer {token}
Content-Type: text/html; charset=utf-8
Accept: application/json
...
<!DOCTYPE html>
<html>
<head>
<title>My new OneNote page</title>
<meta name="created" content="2015-09-9T12:45:00.000-8:00"/>
</head>
<body>
<p>This is a simple HTML page.</p>
</body>
</html>
Wenn dies erfolgreich ist, gibt die Anforderung die folgende Antwort zurück — in diesem Fall eine OData-Darstellung der neuen Seite im JSON-Format.
HTTP/1.1 201 Created
Location:https://www.onenote.com/api/v1.0/me/notes/pages/0-37e6dad...
X-CorrelationId:8943c159-ee49-4c71-8cd0-ebf0861d07a6
Date:Sun, 09 Aug 2015 21:36:40 GMT
Content-Type:application/json; odata.metadata=minimal; odata.streaming=true
...
{
"@odata.context": "https://www.onenote.com/api/v1.0/$metadata#me/notes/pages/$entity",
"title": "My new OneNote page",
"createdByAppId": "WLID-0000000048219837",
"links": {
"oneNoteClientUrl": {
"href": "onenote:https://d.docs.live.net/73dbaf9b..."
},
"oneNoteWebUrl": {
"href": "https://onedrive.live.com/redir.aspx?cid=73dbaf9b..."
}
},
"contentUrl": "https://www.onenote.com/api/v1.0/me/notes/pages/0-37e6dad.../content",
"lastModifiedTime": "2015-09-09T12:45:00Z",
"id": "0-37e6dad8c6eb489294656ad878431666!209-73DBAF9B7E5C4B4C!153",
"self": "https://www.onenote.com/api/v1.0/me/notes/pages/0-37e6dad...",
"createdTime": "2015-09-09T12:45:00Z"
}
Siehe Seiten erstellen für einen genaueren Blick auf POST-Seiten-Anforderungen.
Warum sollte ich OneNote-Apps erstellen?
Integrieren Sie OneNote, um App zu erstellen, die die Menschen lieben werden. Sie können die OneNote-API verwenden, um Notizen, Listen, Bilder, Dateien usw. in OneNote-Notizbüchern zu erstellen und verwalten.
Erfassen und Organisieren von Notizen und Ideen
Verwenden Sie OneNote als Hilfsmittel zum Hinzufügen und Ordnen von Benutzerinhalten. Die OneNote-API macht es einfach, Apps zu schreiben, damit Schüler Notizen machen und Recherchen anstellen können, Familien Pläne und Ideen austauschen, Käufer Bilder austauschen — all die Dinge, die die Menschen am meisten interessieren. Ihre App sammelt die gewünschten Informationen, sendet sie an OneNote und hilft dann bei der Verwaltung dieser Informationen.
Erfassen von Informationen in vielen verschiedenen Formaten
Erfassen Sie HTML-Code, eingebettete Bilder (aus einer lokalen Quelle oder öffentlichen URL), Videos, Audio, E-Mail-Nachrichten und andere gängige Dateitypen. OneNote kann sogar Webseiten und PDF-Dateien als Snapshots darstellen. Die OneNote-API unterstützt eine Reihe von standardmäßigen HTML- und CSS-Codes für das OneNote-Seitenlayout, sodass Sie Tabellen, eingebettete Bilder und einfache Formatierungen verwenden können, um das gewünschten Design zu erzielen.
Verwenden Sie das Ökosystem von OneNote, um Ihre wichtigsten Szenarien zu verbessern.
Probieren Sie andere leistungsfähige Funktionen von OneNote-API aus. Die API führt OCR auf Bildern aus, unterstützt Volltextsuche, synchronisiert Clients automatisch, verarbeitet Bilder und extrahiert Visitenkarten-Captures sowie Online-Produkt- und Rezeptlisten. Verwenden Sie OneNote als digitalen Erinnerungsspeicher in der Cloud für Notizen und einfache Medien oder als Datenfeed für domänenspezifische Daten.
Millionen von OneNote-Benutzern auf allen wichtigen Plattformen erreichen
Verwenden Sie OneNote, um Ihre App-Nutzung zu steigern. Vorinstalliert auf neuen Windows-Geräten, verfügbar für gängige Plattformen, im Web als OneNote Online und Teil von Office 365 — Über 100 Millionen Menschen weltweit nutzen OneNote aktiv. Wenn Sie Apps veröffentlichen, die die funktionsreiche OneNote-Umgebung nutzen, ist das plattformübergreifende Marktpotenzial einfach zu groß, um es zu ignorieren.
Erste Schritte mit der OneNote-API
Verwenden Sie Beispiele und Lernprogramme, um schnell mit der Codierung zu beginnen, probieren Sie unsere interaktiven Konsolen aus oder tauchen Sie tiefer in unsere Dokumentation ein.
OneNote-Beispiele und Lernprogramme
Diese Beispiele und Lernprogramme zeigen die Grundlagen der Verwendung der OneNote-API auf verschiedenen Plattformen (Siehe alle unsere Beispiele auf GitHub).
Plattform | Beispiele und Lernprogramme |
---|---|
iOS | iOS-REST-API-Explorer (nur MSA) Lernprogramm |
Windows | OneNoteAPISampleWinUniversal |
Android | Android-REST-API-Explorer |
PHP | OneNoteAPISamplePHP (nur MSA) |
Node.js | OneNoteAPISampleNodejs (nur MSA) |
Ruby | OneNoteAPISampleRuby (nur MSA) |
ASP.NET MVC | Lernprogramm (Nur Azure AD) |
*MSA = Microsoft Konto-Authentifizierung, Azure AD = Azure Active Directory-Authentifizierung
Anleitungen und konzeptionelle Artikel
Wenn Sie bereit sind, ausführlichere Informationen zu erhalten, lesen Sie unsere Anleitungen und konzeptionellen Artikel, um mehr darüber zu erfahren, was Sie mit OneNote tun können.
- Schnellstart-Lernprogramm
- Authentifizierung und Berechtigungen
- Authentifizierung und Azure AD-Anwendungsberechtigungen
- Brandingrichtlinien
- Unterstützte REST-Operationen
- Abrufen von OneNote-Inhalt und -Struktur
- Öffnen der OneNote-Clients
- Kopieren von Notizbüchern, Abschnitten und Seiten
- Seiten erstellen
- Seiteninhalt aktualisieren
- Hinzufügen von Bildern, Videos und Dateien
- Erstellen von absolut positionierten Elementen
- Extrahieren von Daten
- Verwenden von Notiztags
- Eingabe- und Ausgabe-HTML
- Fehler- und Warnungscodes
- Verwalten von Berechtigungen auf OneNote-Entitäten
- Sharing-Links erstellen
- Mit Klassen-Notizbüchern arbeiten
- Arbeiten Sie mit Notizbüchern der asynchronen Klasse
- Arbeiten mit Mitarbeiternotizbüchern
- LMS-API-Richtlinien für die Integration von Klassen-Notizbüchern
- LMS-Scale-Richtlinien für die Integration von Klassen-Notizbüchern
- Verwenden Sie das Dialogfeld Speichern
- Webhooks abonnieren
SDKs für die OneNote-Entwicklung
OneNote-Apps können das OneDrive API-SDK verwenden, um die Zugriffstoken zu erhalten, die für alle Anfragen an die OneNote-API erforderlich sind. Das SDK erleichtert Ihnen die Authentifizierung. Sie stellen lediglich Ihre Identitätsinformationen bereit und integrieren einige Aufrufe, und das SDK kümmert sich um alles, von der Anmeldung und Zustimmung bis hin zum Abrufen, Speichern und Aktualisieren von Token. Anschließend können Sie REST-Aufrufe an die OneNote-API durchführen. Unser iOS-Lernprogramm zeigt Ihnen, wie Sie das SDK in einer OneNote-App verwenden können.
Alle Versionen des SDK unterstützen die Microsoft-Kontenauthentifizierung (für Consumer-Notebooks) und einige unterstützen auch Azure Active Directory (für Unternehmens-Notebooks). Die aktuelle Liste der unterstützten Plattformen finden Sie in der OneDrive-Dokumentation.
Hinweis
Das OneDrive API SDK ersetzt das Live SDK. Das Live-SDK ist veraltet, wird aber weiterhin bestehende OneNote-Anwendungen, die es verwenden, unterstützen. Verwenden Sie für die neue Entwicklung das OneDrive API SDK.
Zu einem bestimmten Zeitpunkt können wir Bibliotheken bereitstellen, die sowohl die Authentifizierung als auch systemeigene Aufrufe der OneNote-API unterstützen, doch Sie können jetzt das OneDrive API-SDK verwenden.
Unternehmens-Apps können auch die Active Directory-Authentifizierungsbibliothek (ADAL) verwenden, um auf von Office 365 und SharePoint gehostete Notebooks zuzugreifen. Sie können ADAL direkt verwenden, wenn für Ihre Plattform kein SDK verfügbar ist oder wenn Sie mehr Kontrolle über den Authentifizierungsprozess wünschen. Unser ASP.NET MVC-Lernprogramm zeigt Ihnen, wie Sie ADAL in einer OneNote-App verwenden können.
Wichtig
Für die Interaktion mit OneNote-Inhalten und -Ressourcen sollten Sie immer die OneNote-API verwenden. Verwenden Sie nicht die OneDrive-API.
Weitere Informationen finden Sie unter OneNote-Ressourcen.
Setzen Sie sich mit uns in Verbindung.
Bleiben Sie dabei, wenn wir expandieren und uns verbessern. Wir möchten immer Ihre Fragen und Kommentare hören, Ihnen helfen, die Dinge zu verstehen und Sie auf dem Laufenden halten. So können Sie sich mit uns verbinden:
- Lesen Sie den OneNote-Entwickler-Blog für Neuigkeiten und hilfreiche Tipps.
- Erhalten Sie Expertenantworten zu Stapel-Überlauf.
- Folgen Sie uns auf Twitter: @onenotedev.
- Senden Sie uns Ihre Ideen und Kommentare auf UserVoice.
Was hat sich geändert?
Die folgenden Einträge zeigen die Änderungen, die im letzten Jahr an der OneNote-API und der Dokumentation vorgenommen wurden:
Juli 2016
- Das Thema Mit Mitarbeiter-Notizbüchern arbeiten wurde hinzugefügt.
- Dokumentierter Support für eingebettete Videos.
Mai 2016
- Der Support für die Seitenvorschau wurde hinzugefügt. Verwenden Sie den Endpunkt
../pages/{id}/preview
, um Text- und Bildvorschauinhalte für eine Seite zu erhalten. Lesen Sie den Blogbeitrag Seitenvorschau-API, um mehr zu erfahren. - Dokumentierte Unterstützung für den Speicherort
../users/{id}/notes/
, der den Zugriff auf OneNote-Inhalte ermöglicht, die der angegebene Benutzer (in der URL) mit dem aktuellen Benutzer geteilt hat. Nur für Unternehmens-Notizbücher. - Berechtigungsverwaltungs-APIs wurden hinzugefügt, mit denen Sie Zugriffsrechte für ein Notizbuch, eine Abschnittsgruppe oder einen Abschnitt festlegen können. Nur für Unternehmens-Notizbücher.
- Notizbuch-Operationen für neue Klassen wurden hinzugefügt: Einfügen von Abschnitten aus anderen Notebooks, Einfügen einer Nur Lehrer Abschnittsgruppe, Klassennotizbücher löschen, Klassennotizbücher in einer bestimmten Sprache erstellen, eine E-Mail-Benachrichtigung für ein neues Klassennotizbuch senden. Nur für Unternehmens-Notizbücher.
- Zusätzliche Unterstützung für das
<pre>
-Element im HTML-Seiteninhalten. Jetzt werden Inhalte von Websites wie MSDN und StackOverflow mit richtiger Code-Formatierung gerendert.
März 2016
GET /pages/{id}/content?preAuthenticated=true
zur Produktion veröffentlicht. Wenn die Abfragezeichenfolge-OptionpreAuthenticated=true
zum Abrufen von Seiteninhalten verwendet wird, enthält die Option Ausgabe-HTML öffentliche URLs zu den Bildressourcen auf der Seite. Diese vorab authentifizierten URLs sind eine Stunde lang gültig. Siehe Einmalige Authentifizierung für Öffentliche Ressourcen.PATCH /sections/{id}
zur Produktion veröffentlicht. Dadurch können Sie einen Abschnitt umbenennen, indem Sie einen Inhaltstyp application/json im Nachrichtentext senden, wie folgt:{ "name": "New section name" }
Februar 2016
- Die Themen Webhooks abonnieren und Arbeit mit Klassen-Notizbüchern wurden hinzugefügt. Webhooks wird derzeit nur für Verbraucher-Notizbücher auf OneDrive unterstützt.
Januar 2016
- Einschränkung eingeschaltet. Erfahren Sie mehr über OneNote-API-Einschränkung und Best Practices, um dies zu vermeiden.
- Die Themen Unterstützte REST-Operationen und Notizbücher, Abschnitte und Seiten kopieren wurden hinzugefügt. Die Kopierfunktion ist derzeit nur für Office 365-Notizbücher verfügbar.
November 2015
- Unterstützung für Office 365-Notizbücher wurde von der Vorschauversion in die Produktion verschoben. Enthält Unterstützung für Notizbücher auf SharePoint-Sites und Office 365-Gruppen sowie die Berechtigungen Notes.Read.All und Notes.ReadWrite.All, die für den Zugriff auf diese Notizbücher auf Unternehmensebene erforderlich sind.
- ,
POST /notebooks/{id}/sectiongroups
undPOST /sectiongroups/{id}/sectiongroups
wurden zur Produktion veröffentlicht.POST /sectiongroups/{id}/sections
- CopyNotebook, CopyToNotebook, CopyToSectionGroup, CopyToSection zur Produktion für Office 365-Notizbücher veröffentlicht.
- Die Navigationseigenschaften parentSection und parentNotebook wurden zu den Seiten hinzugefügt. Die Standardabfrage
GET pages
erweitert parentSection und wählt die Eigenschaften der Sektion name, id und self. - Die Eigenschaften level und order wurden zu den Seiten hinzugefügt. Um diese Eigenschaften abzurufen, fügen Sie den Parameter pagelevel in eine Abfrage für die Seitensammlung in einem Abschnitt oder für eine bestimmte Seite ein. Beispiele:
GET ../sections/{id}/pages?pagelevel=true
oderGET ../pages/{id}?pagelevel=true
- Die maximale Anzahl der Zeichen in einem Notizbuch-Namen wurde von 50 auf 128 geändert.
- Die Anleitungen und die konzeptionelle Dokumentation wurde verschoben. Die neue Dokumentation umfasst OneNote-APIs sowohl für Verbraucher, als auch Unternehmen.
September 2015
- Die maximale Anzahl von Seiten, die in einer Anfrage
GET pages
mit der Abfrage-Zeichenfolgeoption top ausgegeben werden, wurde von 500 auf 100 geändert.
Juli 2015
- Zwei OneNote-REST-API-Explorer-Beispielapps wurden hinzugefügt:
- iOS-REST-API-Explorer
- Android-REST-API-Explorer DELETE pages
zur Produktion veröffentlicht.- Die Stamm-Dienst-URL in den Erste-Schritte-Themen wurde aktualisiert, um die neue, empfohlene
/me/notes/
Route zu verwenden:https://www.onenote.com/api/v1.0/me/notes/
Juni 2015
- Das Thema Verwenden von Notiztags wurde veröffentlicht.