Поделиться через


listItem: createLink

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Создайте ссылку для общего доступа для объекта listItem.

Действие createLink создает новую ссылку для общего доступа, если указанный тип ссылки еще не существует для вызывающего приложения. Если ссылка для общего доступа указанного типа уже существует для приложения, это действие возвращает существующую ссылку для общего доступа.

Ресурсы listItem наследуют разрешения на общий доступ из списка, в котором находится элемент.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Files.ReadWrite Files.ReadWrite.All, Sites.ReadWrite.All
Делегированные (личная учетная запись Майкрософт) Files.ReadWrite Files.ReadWrite.All
Приложение Files.ReadWrite.All Sites.ReadWrite.All

HTTP-запрос

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

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.

Текст запроса

В тексте запроса укажите представление параметров в формате JSON.

В следующей таблице указаны параметры, которые можно использовать с этим действием.

Свойство Тип Описание
type String Тип создаваемой ссылки для совместного доступа. Необязательный параметр.
область String Область создаваемой ссылки. Либо anonymous, organization либо users. Необязательный параметр.
expirationDateTime DateTimeOffset Строка в формате yyyy-MM-ddTHH:mm:ssZ элемента DateTime указывает время окончания срока действия разрешения. Необязательный параметр.
password Строка Пароль ссылки для общего доступа, заданной создателем. Необязательный параметр.
recipients коллекция driveRecipient Коллекция получателей, которые получат доступ к ссылке общего доступа. Необязательный параметр.
retainInheritedPermissions Boolean Необязательное свойство. Если true (по умолчанию) все существующие унаследованные разрешения сохраняются для общего элемента при первом предоставлении общего доступа к этому элементу. Если falseзадано значение , все существующие разрешения удаляются при первом предоставлении общего доступа.
sendNotification Логический Если trueзадано значение , этот метод отправляет ссылку общего доступа в сообщении электронной почты пользователям, указанным в recipients. Применимо к OneDrive для бизнеса и SharePoint. Значение по умолчанию — false. Необязательный параметр.

Параметр type может принимать указанные ниже значения.

Значение типа Описание
представление Создает ссылку на элемент, предполагающую доступ только для чтения.
Отзыв Создает ссылку на проверку элемента. Этот параметр доступен только для файлов в OneDrive для бизнеса и SharePoint.
edit Создает ссылку на элемент, предполагающую доступ для чтения и записи.
Внедрить Создает встроенную ссылку на элемент.
blocksСкачать Создает ссылку только для чтения, которая блокирует скачивание элемента. Этот параметр доступен только для файлов в OneDrive для бизнеса и SharePoint.
createOnly Создает ссылку только для отправки на элемент. Этот параметр доступен только для папок в OneDrive для бизнеса и SharePoint.
addressBar Создает ссылку по умолчанию, которая отображается в адресных строках браузера для вновь созданных файлов. Доступно только в OneDrive для бизнеса и SharePoint. Администратор организации настраивает, поддерживается ли этот тип ссылки и какие функции поддерживаются этим типом ссылки.
adminDefault Создает ссылку по умолчанию на элемент, определяемую администратором организации. Доступно только в OneDrive для бизнеса и SharePoint. Политика применяется для организации администратором.

Типы областей

Параметр scope может принимать указанные ниже значения.

Значение Описание
Анонимные Любой пользователь со ссылкой обладает правом доступа без необходимости входа в систему. Это также относится к людям вне вашей организации. Администратор может отключить поддержку ссылок, не требующих проверки подлинности.
organization; Любой пользователь, вошедший в вашу организацию (клиент), может использовать ссылку для получения доступа. Доступно только в OneDrive для бизнеса и SharePoint.
users Определенные пользователи в коллекции получателей могут использовать ссылку для получения доступа. Доступно только в OneDrive для бизнеса и SharePoint.

Отклик

В случае успешного выполнения этот метод возвращает один ресурс разрешений в тексте ответа, который представляет запрошенные разрешения на общий доступ.

Ответом будет 201 Created , если для объекта listItem создана новая ссылка для общего доступа или 200 OK возвращается существующая ссылка.

Примеры

В следующем примере запрашивается создание ссылки общего доступа для объекта listItem, указанного {itemId} в списке, указанном {listId}. Ссылка для совместного доступа подразумевает доступ только для чтения, и ее может использовать каждый, кому она предоставлена. Для пользователей OneDrive для бизнеса и SharePoint используйте sendNotification параметр , чтобы создать ссылку для общего доступа. sharingLink Затем отправляется получателям по электронной почте. Все существующие разрешения удаляются при первом совместном использовании, если retainInheritedPermissions имеет значение false.

Запрос

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 для бизнеса и SharePoint поддерживают ссылки с возможностью общего доступа в компании. Эти ссылки похожи на анонимные, за исключением того, что они работают только для участников организации-владельцев. Чтобы создать такую ссылку, задайте для параметра 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 можно внедрить в <iframe> ЭЛЕМЕНТ HTML. При создании webHtml ссылки внедрения свойство содержит HTML-код для <iframe> размещения содержимого.

Примечание. Внедрение ссылок поддерживается только в личных учетных записях 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"
    },
  }
}

Замечания

  • Чтобы создать ссылку на основе политики организации по умолчанию и разрешений вызывающего объекта на listItem, опустите параметры область и type.
  • Срок действия ссылок, созданных с помощью этого действия, не истекает, если для организации не применяется политика истечения срока действия по умолчанию.
  • Ссылки отображаются в разрешениях общего доступа для объекта listItem и могут быть удалены владельцем listItem.
  • Ссылки всегда указывают на текущую версию объекта listItem, если только listItem не извлечен (только SharePoint).