Table of contents
TOC
目次を折りたたむ
目次を展開する
最終更新日: 2017/11/10

OneNote のエンティティの共有リンクを作成する

適用対象: Office 365 のエンタープライズ ノートブック

他のユーザーと OneNote ファイルを共有するための共有リンクを作成します。この API を使用して、匿名ゲスト リンクを作成、取得、および無効にすることができます。ゲスト リンクにより、ログインを必要とせずに、編集アクセス許可または表示専用のアクセス許可が付与されます。

GET ../sectiongroups/{sectiongroup-id}/Microsoft.OneNote.Api.GetAnonymousSharingLink

POST ../sectiongroups/{sectiongroup-id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink

DELETE ../sectiongroups/{sectiongroup-id}/Microsoft.OneNote.Api.RevokeAnonymousSharingLink

共有リンクは Office 365 の個人、サイト、グループのノートブックでサポートされますが、OneDrive のコンシューマー ノートブックではサポートされません。現時点では、sectiongroup エンティティのみがサポートされています。

要求 URI の構築

要求 URI を構築するには、お使いのプラットフォーム用のサービス ルート URL から開始します。

OneDrive for Business のノートブック
https://www.onenote.com/api/v1.0/me/notes/
https://www.onenote.com/api/v1.0/users/{id}/notes/

SharePoint サイトのノートブック
https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/

統合グループのノートブック
https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/


次に、セクション グループのエンティティへのパスを追加して、共有リンク関数を続けます。

完全な要求 URI は、次の例のようになります。

https://www.onenote.com/api/v1.0/me/notes/sectiongroups/{id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink

https://www.onenote.com/api/v1.0/users/{id}/notes/sectiongroups/{id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink

https://www.onenote.com/api/v1.0/myOrganization/siteCollections/{id}/sites/{id}/notes/sectiongroups/{id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink

https://www.onenote.com/api/v1.0/myOrganization/groups/{id}/notes/sections/{id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink

サービス ルート URL について詳しく説明します。

セクション グループの匿名のリンクを作成するには、適切なエンドポイントを使用して GET 要求を送信します。

GET ../sectiongroups/{sectiongroup-id}/Microsoft.OneNote.Api.GetAnonymousSharingLink

関数パラメーターの accessLevel 列挙型は、共有リンクのアクセス レベルを示します。

accessLevel 列挙型のパラメーターの値作成する共有リンクのアクセス レベル。表示と編集のどちらかを選択します。
表示そのアイテムへの読み取り専用リンクを作成します。
編集そのアイテムへの読み取り/書き込みリンクを作成します。

要求

GET ../api/v1.0/me/notes/sectionGroups/{sectiongroup-id}/Microsoft.OneNote.Api.GetAnonymousSharingLink(accessLevel=Microsoft.OneNote.Api.SharingLinkAccessLevel'View') 
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json

応答

HTTP/1.1 200 Ok

{
  "@odata.context":"https://www.onenote.com/api/v1.0/$metadata#Edm.String",
  "value":"https://www.contoso.com/_layouts/15/WopiFrame.aspx?folderid=084a6fcc95ab54a678257e1b9cba41e7e&authkey=AXXriBu-O475sT4tfJeJDkA&FixProgId=1"
}

要求および応答に関する情報

次の情報は、GET /GetAnonymousSharingLink 要求に当てはまります。

要求データ説明
プロトコルすべての要求は SSL/TLS HTTPS プロトコルを使用します。
承認ヘッダー

Bearer {token}{token} は、登録済みアプリの有効な OAuth 2.0 アクセス トークンになります。

これがないか、無効の場合、要求は失敗し、401 ステータス コードが表示されます。 「Azure AD を使用した認証 (エンタープライズ アプリ)」をご覧ください。

アクセス許可の適用範囲Notes.ReadWrite または Notes.ReadWrite.All
応答データ説明
成功コード200 HTTP ステータス コード。
応答本文JSON 形式での値の OData 表現。
エラー要求が失敗すると、API は応答本文にエラーを返します。
X-CorrelationId ヘッダー要求を一意に識別する GUID。Microsoft サポートと問題のトラブルシューティングを行う際に、この値を Date ヘッダーの値とともに使用できます。

この手順では、既存のリンクを取得するか、存在しない場合はリンクを作成します。ログインせずに OneNote ファイルを表示するには、匿名のリンクを使用できます。

POST ../api/v1.0/me/notes/sectionGroups/{sectiongroup-id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink

メッセージ本文で、必要なパラメーターが含まれる JSON オブジェクトを送信します。

accessLevel 列挙型のパラメーターの値作成する共有リンクのアクセス レベル。表示と編集のどちらかを選択します。
表示そのアイテムへの読み取り専用リンクを作成します。
編集そのアイテムへの読み取り/書き込みリンクを作成します。

要求

POST ../api/v1.0/me/notes/sectionGroups/{sectiongroup-id}/Microsoft.OneNote.Api.GetOrCreateAnonymousSharingLink 
Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json

応答

HTTP/1.1 200 Ok

{
  "@odata.context":"https://www.onenote.com/api/v1.0/$metadata#Edm.String",
  "value":"https://www.contoso.com/_layouts/15/WopiFrame.aspx?folderid=084a6fcc95ab54a678257e1b9cba41e7e&authkey=AXXriBu-O475sT4tfJeJDkA&FixProgId=1"
}

要求および応答に関する情報

次の情報は、POST /GetOrCreateAnonymousSharingLink 要求に当てはまります。

要求データ説明
プロトコルすべての要求は SSL/TLS HTTPS プロトコルを使用します。
承認ヘッダー

Bearer {token}{token} は、登録済みアプリの有効な OAuth 2.0 アクセス トークンになります。

これがないか、無効の場合、要求は失敗し、401 ステータス コードが表示されます。 「Azure AD を使用した認証 (エンタープライズ アプリ)」をご覧ください。

アクセス許可の適用範囲Notes.ReadWrite または Notes.ReadWrite.All
応答データ説明
成功コード200 HTTP ステータス コード。
応答本文JSON 形式での値の OData 表現。
エラー要求が失敗すると、API は応答本文にエラーを返します。
X-CorrelationId ヘッダー要求を一意に識別する GUID。Microsoft サポートと問題のトラブルシューティングを行う際に、この値を Date ヘッダーの値とともに使用できます。

セクション グループの既存の共有リンクを取り消すには、以下の手順に従います。

DELETE ../v1.0/me/notes/sectiongroups/{sectiongroup-id}/Microsoft.OneNote.Api.RevokeAnonymousSharingLink

メッセージ本文で、必要なパラメーターが含まれる JSON オブジェクトを送信します。

accessLevel 列挙型のパラメーターの値作成する共有リンクのアクセス レベル。表示と編集のどちらかを選択します。
表示そのアイテムへの読み取り専用リンクを作成します。
編集そのアイテムへの読み取り/書き込みリンクを作成します。

要求

DELETE ../v1.0/me/notes/sectiongroups/{sectiongroup-id}/Microsoft.OneNote.Api.RevokeAnonymousSharingLink
Authorization: Bearer {token}
Accept: application/json

{ 
  “accessLevel”: “view” 
} 

応答

HTTP/1.1 204 No Content

要求および応答に関する情報

次の情報は、DELETE /RevokeAnonymousSharingLink 要求に当てはまります。

要求データ説明
プロトコルすべての要求は SSL/TLS HTTPS プロトコルを使用します。
承認ヘッダー

Bearer {token}{token} は、登録済みアプリの有効な OAuth 2.0 アクセス トークンになります。

これがないか、無効の場合、要求は失敗し、401 ステータス コードが表示されます。 「Azure AD を使用した認証 (エンタープライズ アプリ)」をご覧ください。

アクセス許可の適用範囲Notes.ReadWrite または Notes.ReadWrite.All
応答データ説明
成功コード204 HTTP ステータス コード。
エラー要求が失敗すると、API は応答本文にエラーを返します。
X-CorrelationId ヘッダー要求を一意に識別する GUID。Microsoft サポートと問題のトラブルシューティングを行う際に、この値を Date ヘッダーの値とともに使用できます。

SharePoint Online 環境の外部共有をオンまたはオフにする

SharePoint Online 環境の外部共有を管理する

OneNote サービスのルート URL の構築

OneNote サービスのルート URL は、OneNote API へのすべての呼び出しで次の形式を使用します。

https://www.onenote.com/api/{version}/{location}/notes/


URL の version セグメントは、使用する OneNote API のバージョンを示しています。

  • 安定した運用コードには v1.0 を使用します。
  • 開発中の機能を試すには beta を使用します。 ベータ版の機能は変更される可能性があるため、運用コードでは使用しないでください。


URL の location セグメントは、アクセスするノートブックの場所を示しています。

OneDrive for Business のノートブック
現在のユーザーが所有する OneNote コンテンツには me を使用します。

指定されたユーザー (URL 内) が現在のユーザーと共有している OneNote コンテンツには users/{id} を使用します。 ユーザー ID を取得するには Azure AD Graph API を使用します。

SharePoint サイトのノートブック
チーム サイトとその他の SharePoint サイトには、ドキュメント ライブラリ内の OneNote ノートブックを含めることができます。

現在のユーザーがサインインしているテナント内のサイトの OneNote コンテンツには myOrganization/siteCollections/{id}/sites/{id} を使用します。 現在のテナントのみがサポートされており、myOrganization キーワードを使ってアクセスします。 サイト ID を取得する方法を説明します。

Office 365 グループ ノートブック
Office 365 グループは Office 365 Connected Experience の一部です。 グループ メンバーは、ノートブック、ファイル、メールを共有できます。

現在のユーザーがメンバーになっている指定のグループの OneNote コンテンツには myOrganization/groups/{id} を使用します。 サポートされるグループの種類は、(unified groupType を返す) Office 365 グループのみです。 グループ ID を取得するには Azure AD Graph API を使用します。


サイト コレクションとサイト ID を取得するには FromUrl メソッドを使用します
指定されたサイトの絶対 URL のサイト コレクションとサイト ID を取得するには FromUrl メソッドを使用できます。 必要な場合にのみこの呼び出しを行ってから、今後使用するために値を保存する必要があります。

サイト URL の形式は、例えば https://domain.sharepoint.com/site-ahttps://domain.com/sites/site-aなど、構成に依存します。

要求の例:

GET https://www.onenote.com/api/v1.0/myOrganization/siteCollections/FromUrl(url='{full-path-to-SharePoint-site}')
Authorization: Bearer {token}
Accept: application/json

応答の例:

{
  "@odata.context":"https://www.onenote.com/api/v1.0/$metadata#Microsoft.OneNote.Api.SiteMetadata",
  "siteCollectionId":"09d1a587-a84b-4264-3d15-669429be8cc5",
  "siteId":"d9e4d5c8-683f-4363-89ae-18c4e3da91e9"
}

FromUrl を使って、SharePoint サイトのノートブックを操作するための要件:

  • OneNote のノートブック、セクション グループ、セクション、ページを作成できるのは、既定のドキュメント ライブラリのサイト上のみです (一部のサイト テンプレートは、既定のドキュメント ライブラリを作成しません)。ただし、GET 要求は、サイト上のすべてのドキュメント ライブラリから OneNote コンテンツを返します。
  • OneNote サービス ルート URL は変更できません。つまり、SharePoint REST API サイト パスを使用して、そこに notes エンドポイントを追加することはできません。
  • 呼び出し元であるユーザーは、サイトのメンバーである必要があります。
  • FromUrl は、インデックス付けされたサイトでのみ機能します。 新しいサイトにインデックスを付けるには、数時間かかることがあります。

その他のリソース

© 2018 Microsoft