次の方法で共有


listItem: createLink

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

listItem の共有リンクを作成します。

createLink アクションは、呼び出し元のアプリケーションに指定されたリンクの種類がまだ存在しない場合に、新しい共有リンクを作成します。 指定した種類の共有リンクがアプリに既に存在する場合、このアクションは既存の共有リンクを返します。

listItem リソースは、アイテムが存在する リスト から共有アクセス許可を継承します。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください

アクセス許可の種類 最小特権アクセス許可 特権の高いアクセス許可
委任 (職場または学校のアカウント) Files.ReadWrite Files.ReadWrite.All、Sites.ReadWrite.All
委任 (個人用 Microsoft アカウント) Files.ReadWrite Files.ReadWrite.All
アプリケーション Files.ReadWrite.All Sites.ReadWrite.All

HTTP 要求

POST /sites/{siteId}/lists/{listId}/items/{itemId}/createLink

要求ヘッダー

名前 説明
Authorization ベアラー {token}。 必須です。 認証と承認の詳細については、こちらをご覧ください。
Content-Type application/json. 必須です。

要求本文

要求本文で、パラメーターの JSON 表現を指定します。

次の表に、このアクションで使用できるパラメーターを示します。

プロパティ 説明
type String 作成する共有リンクの種類。 省略可能です。
スコープ String 作成するリンクのスコープ。 、organization、または usersのいずれかanonymous。 オプション。
expirationDateTime DateTimeOffset DateTime の形式が yyyy-MM-ddTHH:mm:ssZ の文字列は、アクセス許可の有効期限を示します。 オプション。
パスワード String 作成者が設定する共有リンクのパスワード。 省略可能です。
Recipients driveRecipient コレクション 共有リンクへのアクセスを受け取る受信者のコレクション。 省略可能です。
retainInheritedPermissions ブール値 省略可能。 (既定値) の場合 true 、このアイテムを初めて共有するときに、既存の継承されたアクセス許可が共有アイテムに保持されます。 の場合 false、共有時に既存のすべてのアクセス許可が初めて削除されます。
sendNotification ブール型 の場合true、このメソッドは、 で指定されたrecipientsユーザーに電子メールの共有リンクを送信します。 OneDrive for Businessと SharePoint に適用されます。 既定値は false です。 省略可能です。

type パラメーターには次の値を使用できます。

種類の値 説明
view そのアイテムへの読み取り専用リンクを作成します。
レビュー アイテムへのレビュー リンクを作成します。 このオプションは、OneDrive for Businessおよび SharePoint 内のファイルでのみ使用できます。
edit そのアイテムへの読み取り/書き込みリンクを作成します。
埋め込み そのアイテムへの埋め込み可能なリンクを作成します。
blocksDownload アイテムへのダウンロードをブロックする読み取り専用リンクを作成します。 このオプションは、OneDrive for Businessおよび SharePoint 内のファイルでのみ使用できます。
createOnly アイテムへのアップロード専用リンクを作成します。 このオプションは、OneDrive for Businessおよび SharePoint 内のフォルダーでのみ使用できます。
アドレスバー 新しく作成されたファイルのブラウザー アドレス バーに表示される既定のリンクを作成します。 OneDrive for Business および SharePoint の場合のみ使用できます。 organization管理者は、このリンクの種類がサポートされているかどうか、およびこのリンクの種類でサポートされる機能を構成します。
adminDefault organizationの管理者によって決定された項目への既定のリンクを作成します。 OneDrive for Business および SharePoint の場合のみ使用できます。 ポリシーは、管理者によってorganizationに適用されます

スコープの種類

scope パラメーターには次の値を使用できます。

説明
匿名 リンクを知っているすべてのユーザーは、サインインするこなくアクセスできます。 これには、組織外のユーザーも含まれる場合があります。 匿名リンクのサポートは、管理者により無効にされることがあります。
組織 組織 (テナント) にサインインしているユーザーは、リンクを使用してアクセスできます。 OneDrive for Business および SharePoint の場合のみ使用できます。
users 受信者コレクション内の特定のユーザーは、リンクを使用してアクセスを取得できます。 OneDrive for Business および SharePoint の場合のみ使用できます。

応答

成功した場合、このメソッドは、要求された共有 アクセス許可 を表す単一のアクセス許可リソースを応答本文に返します。

応答は、 201 Created listItem に対して新しい共有リンクが作成された場合、または 200 OK 既存のリンクが返される場合です。

次の例では、指定された {listId} リスト内の {itemId} によって指定された listItem に対して共有リンクを作成するように要求します。 共有リンクは、読み取り専用でそのリンクによってだれでも使用可能になるよう構成されます。 OneDrive for Businessおよび SharePoint ユーザーの場合は、 パラメーターをsendNotification使用して共有リンクを作成します。 sharingLinkその後、 は電子メールを介して受信者に送信されます。 false の場合 retainInheritedPermissions 、共有時に既存のすべてのアクセス許可が削除されます。

要求

POST https://graph.microsoft.com/beta/sites/{siteId}/lists/{listId}/items/{itemId}/createLink
Content-Type: application/json

{
  "type": "view",
  "scope": "anonymous",
  "password": "String",
  "recipients": [
    {
      "@odata.type": "microsoft.graph.driveRecipient"
    }
  ],
  "sendNotification": true,
  "retainInheritedPermissions": false
}

応答

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "123ABC",
  "roles": ["write"],
  "link": {
    "type": "view",
    "scope": "anonymous",
    "webUrl": "https://1drv.ms/A6913278E564460AA616C71B28AD6EB6",
    "application": {
      "id": "1234",
      "displayName": "Sample Application"
    },
  },
  "hasPassword": true
}

OneDrive for Business および SharePoint は、会社の共有可能リンクをサポートしています。 これらのリンクは匿名リンクに似ていますが、所有するorganizationのメンバーに対してのみ機能します。 会社の共有可能リンクを作成するには、scope パラメーターで値 organization を指定して使用します。

要求

POST https://graph.microsoft.com/beta/sites/{siteId}/lists/{listId}/items/{itemId}/createLink
Content-Type: application/json

{
  "type": "edit",
  "scope": "organization"
}

応答

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "123ABC",
  "roles": ["write"],
  "link": {
    "type": "edit",
    "scope": "organization",
    "webUrl": "https://contoso-my.sharepoint.com/personal/ellen_contoso_com/...",
    "application": {
      "id": "1234",
      "displayName": "Sample Application"
    },
  }
}

リンク型を embed 使用すると、返される webUrl を HTML 要素に <iframe> 埋め込むことができます。 埋め込みリンクが作成されると、 webHtml プロパティには、 のコンテンツをホストするための <iframe> HTML コードが含まれます。

注: 埋め込みリンクは、OneDrive 個人用でのみサポートされます。

要求

POST https://graph.microsoft.com/beta/sites/{siteId}/lists/{listId}/items/{itemId}/createLink
Content-Type: application/json

{
  "type": "embed"
}

応答

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "123ABC",
  "roles": ["read"],
  "link": {
    "type": "embed",
    "webHtml": "<IFRAME src=\"https://onedrive.live.com/...\"></IFRAME>",
    "webUrl": "https://onedive.live.com/...",
    "application": {
      "id": "1234",
      "displayName": "Sample Application"
    },
  }
}

注釈

  • organizationの既定のポリシーと listItem に対する呼び出し元のアクセス許可に基づいてリンクを作成するには、スコープと型パラメーターを省略します。
  • このアクションを使用して作成されたリンクは、organizationに既定の有効期限ポリシーが適用されない限り有効期限が切れません。
  • リンクは listItem の共有アクセス許可に表示され、listItem の所有者が削除できます。
  • listItem がチェックアウトされていない限り、リンクは常に listItem の現在のバージョンを指します (SharePoint のみ)。